HTMLAktualisierungsabfrage basiert auf HTML Wählen Sie eine Option Array PHP
<input type="hidden" name="coreid[]" value="<?php echo $coreid; ?>">
<input type="hidden" name="student_no" value="<?php echo $student_no; ?>">
<div class="col col-lg-2 col-md-2 col-xs-2">
<div class="form-group">
<select name="corevalues[]" class="form-control">
<option value="">Select</option>
<?php
$result11 = mysqli_query($con, "SELECT * FROM core_values");
while ($row11 = mysqli_fetch_array($result11)){
$idcore = $row11['id'];
$levelid = $row11['marking'];
$level_name = $row11['non_marking'];
if ($first == $level_name){
echo '<option value="'.$level_name.'" selected="selected">'.$level_name.'</option>';
} else{
echo '<option value="'.$level_name.'">'.$level_name.'</option>';
}
}
?>
</select>
</div>
</div>
PHP
$coreid = $_POST['coreid'];
$grade = $_POST['corevalues'];
$student_no = $_POST['student_no'];
$quarter = $_POST['quarter'];
$marking = $_POST['marking'];
$quarter2 = $_POST['quarter2'];
$xx = 0;
foreach ($coreid as $sid) {
foreach ($grade as $sid2) {
$checkrecords = mysqli_query($con, "SELECT * FROM teacher_cv WHERE coreid='".$sid."' AND student_no='".$student_no."'");
if (mysqli_num_rows($checkrecords) > 0){
$sql = "UPDATE teacher_cv
SET $quarter='".$sid2."'
WHERE coreid='".$sid."' AND
student_no='".$student_no."'";
if (!mysqli_query($con,$sql))
{
die('Error: 1 ' . mysqli_error($con));
}
$xx++;
} else{
$sql = "INSERT INTO teacher_cv
( coreid,
$quarter,
student_no)
VALUES ( '".$sid."',
'".$sid2."',
'".$student_no."')";
if (!mysqli_query($con,$sql))
{
die('Error: 1 ' . mysqli_error($con));
}
$xx++;
}
}
}
Im Aktualisierung meiner Tabelle teacher_cv mit Basis mehr Daten auf HTML Wählen Sie eine Option. Um zu zeigen, welchen Standard der Kernwert in Lehrern Student.
Aber es scheint Update und einfügen Abfrage erhält immer den letzten Teil, wenn es um first_q ist, die eine Spalte in meiner Tabelle. Hier ist das Beispiel, das ich bisher gemacht habe.
Es scheint, dass die Kern-ID funktioniert, aber der Standard, der in HTML Select ausgewählt wurde, erhält immer den letzten Teil des Arrays. Wie kann ich das gesamte Array, nicht den letzten Teil des Arrays, einfügen/aktualisieren?
UPDATE
ich es vor dem foreach versucht, Druck zu sehen, ob es ist wirklich das Array oder nicht vorbei und hier ist das Ergebnis.
Array ([0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5)
Array ([0] => Sometimes Observed [1] => Rarely Observed [2] => Rarely Observed [3] => Not Observed [4] => Sometimes Observed)
Dank Kunal jetzt weiß ich, dass das Array wirklich vorbei ist. Warum wird nur das letzte Array in die Datenbank eingegeben? Was ist falsch mit mo PHP-Code?
drucken $ cleid und $ grade kurz bevor die foreach beginnt ... !! Gibt es Array oder einen einzelnen Wert zurück? – Kunal
@Kunal für $ Klasse gibt einen einzelnen Wert zurück, denke ich. –
@Kunal Ich habe versucht, Ihren Vorschlag zu drucken, bevor die Foreach und ihre Rückkehr ArrayArray –