Ich habe eine PHP-Seite zieht Handys aus einer Datenbank. Je nachdem, wie viele Telefone sich in der Datenbank befinden, bestimmt die PHP-Seite, wie viele Felder erstellt werden müssen. Ich habe eine Sitzung eingerichtet, um nur diejenigen zu erlauben, die eingeloggt sind und bestimmte Funktionen bearbeiten können.Wie schleife ich einen HTML-Namen Wert mit PHP
Ich möchte das Kontrollkästchen, um die Datenbank mit einer 1 (als aktiv) und einem 0 (als inaktiv) Geräte zu aktualisieren, so dass ich nur diejenigen anzeigen kann, die aktiv sind.
Bearbeiten: session_start(); ist auf jeder Seite der header.php mit dem oberen Rand jeder Seite verbunden. Ich habe das im Code vergessen.
phones.php
<?php
if (isset($_SESSION['u_name'])) {
echo ' <button type="submit" name="submit"
form="activeForm">Save</button>';
}
for($x = 1; $x <= deviceCount("phones"); $x++) {
?>
</section>
<?php
if (isset($_SESSION['u_name'])) {
?>
<form id="activeForm" method="POST" action="save.php">
<input type="checkbox" echo ' name="active'.$x.'"';?>>
</form>
<?php
}
}
?>
Unten ist mein PHP. Ich möchte überprüfen, ob jedes Kontrollkästchen aktiviert ist. Das Problem, das ich habe, ist, dass, nachdem das erste Kontrollkästchen aktiviert wurde, der Rest immer nicht ausgewählt ist.
save.php
<?php
if (isset($_POST['submit'])) {
include_once 'connect.inc.php';
$query = "SELECT * FROM phones";
if ($result=mysqli_query($conn, $query)) {
// Return the number of rows in result set
$rowcount=mysqli_num_rows($result);
}
for($x = 1; $x < $rowcount + 1; $x++) {
$select = 'active'.$x;
if (isset($_POST[$select])) {
$sql = "UPDATE phones SET active='1' WHERE id=$x";
mysqli_query($conn, $sql);
} else {
$sql = "UPDATE phones SET active='0' WHERE id=$x";
mysqli_query($conn, $sql);
}
}
}
Sagen wir, ich 4-Geräte haben. Die erste Checkbox würde reagieren, jedoch würden die nächsten 3 alle nicht ausgewählt auswählen.
Ihre Schaltfläche ist über dem Formular und jede Checkbox hat ihre eigene Form. so kann ich nicht verstehen, wie ist Ihr Formular eingereicht, und natürlich, wenn es eingereicht wurde-wie dann auch nur Single-Checkbox-Daten senden werden –
Sie können den Namen in ein Array und machen Sie den Wert abhängig von der Handynummer . Auch Ihr Formular befindet sich in Ihrer Schleife. Es sollte draußen sein, während das Kontrollkästchen innerhalb der Schleife ist – hungrykoala
Ich fand Fehler in Ihrem Code phone.php –