Daten von Formular in MySQL Tabelle schreiben

1. serialize macht was ganz anderes
http://php.net/manual/de/function.serialize.php

2. $alleSpieler = $tor + $abwehr;
fügt das denn auch die beiden Arrays zusammen?
Wenn du nicht sicher bisst kannst du mit einem "print_r($alleSpieler)" die Variable untersuchen.

wenn du wissen willst wie man in php etwas macht gib es einfach bei google ein.
Beispiel: "array zusammenfügen php"
https://www.google.ch/search?q=arra...rome.0.57j0l3.5123j0&sourceid=chrome&ie=UTF-8
Als ersten Hit bekommst du fast immer einen Link auf php.net/manual. in diesem Fall zu der FUnktion array_merge inkl. einfachen Beispielen.
--> http://php.net/manual/de/function.array-merge.php

Perfekt fürs lerning by doing.
 
Wie kann ich bei dieser Ausgabe der Tabelle in eine Selectbox noch mehrere Felder mitnehmen?
Derzeit wird ja nur die Spalte "Spieler" ausgegeben und ich würde gern auch noch den Verein mitnehmen.

PHP:
<?php

//Verbindung herstellen
$db = mysql_connect("xxx.de.mysql", "xxx_de", "xxx") or die ("Keine Verbindung möglich: ".mysql_error());
mysql_select_db("xxx_de",$db) or die ("Keine Verbindung möglich: ".mysql_error());

$sqlS = "SELECT * FROM `MarktSpieler` WHERE `Position`='Sturm'";

//Stürmer
$sql_resultS = mysql_query($sqlS, $db) or die ("geht nicht");
echo "<select name=\"Sturm[]\"size=\"20\" multiple=\"multiple\">";
while ($daten = mysql_fetch_array($sql_resultS)){
echo "<option value=\"".$daten['ID']."\">".$daten['Spieler']." - ".$daten['Verein']." - ".$daten['Marktwert']."</option>\n";
}
echo "</select>";

//Verbindung beenden
mysql_close($db);
?>

Mit diesem Code bekomme ich alle Stürmer aus der Datenbank angezeigt und kann nun welche Auswählen.

Die Ausgewählten die dann im Array sind möchte ich gern, bevor ich Sie wieder in die Datenbank sende nochmal prüfen.

Heißt:
Ich hätte gern unter der Box ein Feld welches die Summe der ausgewählten Spieler in Echtzeit anzeigt.

Geht sowas mit PHP und wenn ja wie?

Danke
 
Zuletzt bearbeitet:
Ich habe 2 PHP Dateien:

PHP:
<?php

//Verbindung herstellen
$verbindung = mysql_connect("xxx.de.mysql", "xxx_de", "xxx") or die ("Keine Verbindung möglich: ".mysql_error());
mysql_select_db("xxx_de",$verbindung) or die ("Keine Verbindung möglich: ".mysql_error());

$sqlT = "SELECT * FROM `MarktSpieler` WHERE `Position`='Torwart'";
$sqlA = "SELECT * FROM `MarktSpieler` WHERE `Position`='Abwehr'";
$sqlM = "SELECT * FROM `MarktSpieler` WHERE `Position`='Mittelfeld'";
$sqlS = "SELECT * FROM `MarktSpieler` WHERE `Position`='Sturm'";

//Torwart
echo "Torwart:";
echo "<br/>";
$sql_resultT = mysql_query($sqlT, $verbindung) or die ("geht nicht");
echo "<select name=\"tor[]\"size=\"20\" multiple=\"multiple\" style=\"width:400px\">";
while ($daten = mysql_fetch_array($sql_resultT)){
echo "<option value=\"".$daten['ID']."\">".$daten['Spieler']." - ".$daten['Verein']." - ".$daten['Marktwert']."</option>\n";
}
echo "</select>";
echo "<br/>";
//Abwehr
echo "Abwehrspieler:";
echo "<br/>";
$sql_resultA = mysql_query($sqlA, $verbindung) or die ("geht nicht");
echo "<select name=\"abwehr[]\"size=\"20\" multiple=\"multiple\" style=\"width:400px\">";
//echo "<select name=\"Abwehr\">";
while ($daten = mysql_fetch_array($sql_resultA)){
echo "<option value=\"".$daten['ID']."\">".$daten['Spieler']." - ".$daten['Verein']." - ".$daten['Marktwert']."</option>\n";
}
echo "</select>";
echo "<br/>";
//Mittelfeld
echo "Mittelfeldspieler:";
echo "<br/>";
$sql_resultM = mysql_query($sqlM, $verbindung) or die ("geht nicht");
echo "<select name=\"mittelfeld[]\"size=\"20\" multiple=\"multiple\" style=\"width:400px\">";
while ($daten = mysql_fetch_array($sql_resultM)){
echo "<option value=\"".$daten['ID']."\">".$daten['Spieler']." - ".$daten['Verein']." - ".$daten['Marktwert']."</option>\n";
}
echo "</select>";
echo "<br/>";

//Stürmer
echo "St&uuml;rmer:";
echo "<br/>";
$sql_resultS = mysql_query($sqlS, $verbindung) or die ("geht nicht");
echo "<select name=\"sturm[]\"size=\"20\" multiple=\"multiple\" style=\"width:400px\">";
while ($daten = mysql_fetch_array($sql_resultS)){
echo "<option value=\"".$daten['ID']."\">".$daten['Spieler']." - ".$daten['Verein']." - ".$daten['Marktwert']."</option>\n";
}
echo "</select>";
echo "<br/>";

//Verbindung beenden
mysql_close($verbindung);

?>
<form method="post" action="DBschreiben.php">
 <!-- Textfeld für ein Formular zur Eingabe des Namen-->
   <p>Kommentar: <input type="text" name="name" value="Name"></p>

  <!-- Einbau des Submit Buttons zu abschicken des Formulars -->
<input type="submit" name="senden" value="Senden">
</form>

Das klappt soweit:

Nun soll das ganze in der DBschreiben.php eben in die Datenbank geschrieben werden. Also die Auswahl.

PHP:
<?php
$tor = $_POST['tor'];
$abwehr = $_POST['abwehr'];
$mittelfeld = $_POST['mittelfeld'];
$sturm = $_POST['sturm'];
//$user = $_POST['user'];

//Verbindung herstellen
$db = mysql_connect("xxx.de.mysql", "xxx_de", "xxx") or die ("Keine Verbindung möglich: ".mysql_error());
mysql_select_db("xxx_de",$db) or die ("Keine Verbindung möglich: ".mysql_error());


//Alle Spieler zusammentragen
$alleSpieler = array_merge($tor, $abwehr, $mittelfeld, $sturm);

//mysql_query("INSERT INTO `Mirko` (`Name`) VALUES (".implode('),(',$alleSpieler).")");

//Verbindung beenden
mysql_close($db);

?>

und das klappt leider mit der Fehlermeldung nicht:
array_merge(): Argument #1 is not an array in /customers/b/3/5/mirkolinho.de/httpd.www/DBschreiben.php on line 15 Warning: implode(): Invalid arguments passed in /customers/b/3/5/mirkolinho.de/httpd.www/DBschreiben.php on line 19

Woran liegt das?

Danke
 
Zurück