/ / PHP: Fügen Sie mehrere Kontrollkästchenwerte in eine MySQL-Spalte ein - Javascript, PHP, JQuery, MySQL, Kontrollkästchen

PHP: Einfügen mehrerer Kontrollkästchen Werte in eine MySQL-Spalte - Javascript, PHP, Jquery, MySQL, Kontrollkästchen

Ich möchte eine einfache PHP-Funktion schreiben, um Werte von 10 und 20 Kontrollkästchen einzufügen. Das Problem ist nun: Soll ich alle Werte in eine einzelne Spalte der MySQL-Tabelle einfügen oder soll ich mich für die separate Tabelle entscheiden?

Mein Hauptziel ist es, die Werte von mehreren einzufügenKontrollkästchen in MySQL und aktualisieren Sie sie dann. Wenn ich 7 Kontrollkästchen aktiviert habe und nach einiger Zeit von 7 auf 5 aktualisieren möchte, wie werden dann Werte aus der Tabellenspalte entfernt?

Bitte helfen Sie mir mit einem einfachen PHP-Beispielund welche Art von MySQL-Feldern soll ich hinzufügen, weil ich einen Checkbox-Wert einfügen möchte, der in digital sein soll, und die Beschriftung von Checkboxen in einem anderen Feld.

Hier ist das HTML, das ich habe

<form method="post" action="">
Games You Like: <br/>
<input type="checkbox" name="games[]" value="1"><label>Football</label><br>
<input type="checkbox" name="games[]" value="2"><label>Basket Ball</label><br>
<input type="checkbox" name="games[]" value="3"><label>Pool</label><br>
<input type="checkbox" name="games[]" value="4"><label>Rugby</label><br>
<input type="checkbox" name="games[]" value="5"><label>Tennis</label><br>
<input type="checkbox" name="games[]" value="6"><label>Cricket</label><br>
<input type="checkbox" name="games[]" value="7"><label>Table Tennis</label><br>
<input type="checkbox" name="games[]" value="8"><label>Hockey</label><br>
<input type="submit" name="submit" value="submit">
</form>

Antworten:

12 für die Antwort № 1

Versuchen Sie dieses ganze Beispiel,

Tabellenstruktur

CREATE TABLE IF NOT EXISTS `games` (
`id` int(12) NOT NULL AUTO_INCREMENT,
`game_name` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
<?php
include_once("yourconfig.php"); //include your db config file
extract($_POST);
$check_exist_qry="select * from games";
$run_qry=mysql_query($check_exist_qry);
$total_found=mysql_num_rows($run_qry);
if($total_found >0)
{
$my_value=mysql_fetch_assoc($run_qry);
$my_stored_game=explode(",",$my_value["game_name"]);
}

if(isset($submit))
{
$all_game_value = implode(",",$_POST["games"]);
if($total_found >0)
{
//update
$upd_qry="UPDATE games SET game_name="".$all_game_value.""";
mysql_query($upd_qry);

}
else
{
//insert
$ins_qry="INSERT INTO games(game_name) VALUES("".$all_game_value."")";
mysql_query($ins_qry);
}
}

?>
<form method="post" action="">
Games You Like: <br/>
<input type="checkbox" name="games[]" value="1" <?php if(in_array(1,$my_stored_game)){echo "checked";}?>><label>Football</label><br>
<input type="checkbox" name="games[]" value="2" <?php if(in_array(2,$my_stored_game)){echo "checked";}?>><label>Basket Ball</label><br>
<input type="checkbox" name="games[]" value="3" <?php if(in_array(3,$my_stored_game)){echo "checked";}?>><label>Pool</label><br>
<input type="checkbox" name="games[]" value="4" <?php if(in_array(4,$my_stored_game)){echo "checked";}?>><label>Rugby</label><br>
<input type="checkbox" name="games[]" value="5" <?php if(in_array(5,$my_stored_game)){echo "checked";}?>><label>Tennis</label><br>
<input type="checkbox" name="games[]" value="6" <?php if(in_array(6,$my_stored_game)){echo "checked";}?>><label>Cricket</label><br>
<input type="checkbox" name="games[]" value="7" <?php if(in_array(7,$my_stored_game)){echo "checked";}?>><label>Table Tennis</label><br>
<input type="checkbox" name="games[]" value="8" <?php if(in_array(8,$my_stored_game)){echo "checked";}?>><label>Hockey</label><br>
<input type="submit" name="submit" value="submit">
</form>

Dies ist nur ein einfaches Beispiel und eine Abfrage, die ich in diesem Beispiel hinzugefügt habe. Sie können aus diesem einfachen Beispiel lernen und ich denke, dass dies für Sie sehr nützlich ist

Gespeicherte Ausgabe in DB-Tabelle

Formularausgabe


1 für die Antwort № 2

Verwenden Sie die implode-Funktion, um das zurückgegebene Array in einen String zu konvertieren und es dann wie gewohnt in die Datenbank einzufügen

if(isset($_POST["submit"])){
$result = implode(",",$_POST["games"]);

}

Ich hoffe, das wird dir helfen. Grüße Imran Qasim


0 für die Antwort № 3

Ich habe den Namen des Spiels in die Klammern gesetzt und die Werte in true geändert:

<form method="post" action="">
Games You Like: <br/>
<input type="checkbox" name="games[Football]" value="true"><label>Football</label><br>
<input type="checkbox" name="games[Basket]" value="true"><label>Basket Ball</label><br>
<input type="checkbox" name="games[Pool]" value="true"><label>Pool</label><br>
<input type="checkbox" name="games[Rugby]" value="true"><label>Rugby</label><br>
<input type="checkbox" name="games[Tennis]" value="true"><label>Tennis</label><br>
<input type="checkbox" name="games[Cricket]" value="true"><label>Cricket</label><br>
<input type="checkbox" name="games[Table]" value="true"><label>Table Tennis</label><br>
<input type="checkbox" name="games[Hockey]" value="true"><label>Hockey</label><br>
<input type="submit" name="submit" value="submit">
</form>

Nach dem Absenden wird ein Array wie folgt erstellt:

$_POST["games"] = Array ( [Tennis] => true [Cricket] => true [Table] => true )
// all other values false

Sie können dieses Array problemlos speichern und später bearbeiten, wenn Sie es als JSON-Zeichenfolge in Ihrer Datenbank speichern. Dazu benötigen Sie eine einzelne Varchar- oder Textspalte.

json_encode($_POST["games"])
// {"Tennis":"true","Cricket":"true","Table":"true"}

0 für die Antwort № 4

Bitte versuchen Sie dies

<?php
if(isset($_POST["submit"]))
{
//in here you get games array
$mygames = $_POST["games"];
}

?>


<form method="post" action="">
Games You Like: <br/>
<input type="checkbox" name="games[]" value="1"><label>Football</label><br>
<input type="checkbox" name="games[]" value="2"><label>Basket Ball</label><br>
<input type="checkbox" name="games[]" value="3"><label>Pool</label><br>
<input type="checkbox" name="games[]" value="4"><label>Rugby</label><br>
<input type="checkbox" name="games[]" value="5"><label>Tennis</label><br>
<input type="checkbox" name="games[]" value="6"><label>Cricket</label><br>
<input type="checkbox" name="games[]" value="7"><label>Table Tennis</label><br>
<input type="checkbox" name="games[]" value="8"><label>Hockey</label><br>
<input type="submit" name="submit" value="submit">
</form>

0 für die Antwort № 5

Erstens sehr direkt, ich bevorzuge es, Namen wie diesen aus verschiedenen Kontrollkästchen zu machen

BasketBall;Cricket;Tennis

Sie können das durch

implode(";",$array);

und dann schreiben Sie das in MySQL-Tabelle ...

Um diese Werte zu erhalten, verwenden Sie einfach

$array = explode(";",$urVariable);

Für unterschiedliche Werte verwenden

numberOne = $array[1]; // returns Cricket

um irgendeinen Wert zu ändern, benutze einfach die Werte und schreibe ";" bilden..

Ich mag das, weil es einfach zu implementieren ist und perfekt funktioniert!