Dropdown Menü ID's übergeben
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abschicken
code
datum
eingabefeld
ergebnis
feld
formular
http
kaufpreis
nachname
niemand
position
post
spieler
tabelle
team
test
url
verein
vorname
-
Hallo, bin ein neuling in PHP,
hoffe das ich im Richtigen Forenbereich bin, falls nicht tut mir leid und bitte Verschieben.
Nur zu Info ein Freund von mir und ich wollen ein Manager Spiel programmieren.
Also ich erkläre mal kurz was ich habe und was ich vorhabe !!
1. tabelle "verein" beinhaltet:
VID(PK) autoincrement & VName
2. tabelle "myteam" beinhaltet:
TID(PK) autoincrement & Teamname
3. tabelle "position" beinhaltet:
PID(PK) autoincrement & Position
4. tabelle "spieler" beinhaltet:
SID autoincrement, Nachname, Vorname, VID(FK), TID(FK), PID(FK) & Kaufpreis.
So nun zu meinem "Problem"... Ich habe ein Formular mit 3 Eingabefelder und 3 Dropdown Felder.
Die 3 Eingabefelder sind Nachname, Vorname & Kaufpreis. Wenn ich hier was eingebe und das Formular versende wird das auch in tabelle 4 "spieler" eingetragen so weit so gut.
Die 3 Dropdown Felder sind "verein", "position" & Käufer bzw. "myteam".
Die Daten der Dropdown Felder werden jeweils aus dern DB ausgelesen.
Meine Frage.....
Wie kann ich das zusammenführen das wenn ich den Nachnamen, Vornamen und Kaufpreis eines Spieler eingebe und die entsprechenden Dropdown Felder auswähle in die Tabelle "spieler" mit eingeführt werden. Und nicht nur die Eingabefelder in der DB drinn stehen???
Ich weis das man dies mit den jewiligen ID's machen kann, aber nur wie?? Bitte um hilfe !!
Bsp.:
Nachname: Lahm (Eingabefeld)
Vorname: Philipp (Eingabefeld)
Kaufpreis: 10000000 € (Eingabefeld)
Verein: FC Bayern München (Dropdown)
Position: AB (Dropdown)
Käufer: Käufer A (Dropdown)
Hier der PHP Code meines Formular name add_spieler.php:
PHP-Code:
<form action=do_addspieler.php method=post>
<?php
$dbname="*******";
$dbhost="*******";
$dbuser="********";
$dbpass="*******";
$con = mysql_connect($dbhost , $dbuser , $dbpass);
mysql_select_db($dbname , $con);
?>
<h7>Verein Auswählen:</h7>
<div id="eingabe">
<?php
echo "<select>";
$ergebnis = mysql_query("SELECT VName FROM verein");
while ($Verein = mysql_fetch_array($ergebnis))
{
echo "<option value=\"" . $Verein['VName'] . "\">";
echo $Verein['VName'];
echo "</option>\n";
}
echo "</select>";
?>
</div>
<br />
<h7>Position angeben:</h7>
<div id="eingabe">
<?php
echo "<select>";
$ergebnis = mysql_query("SELECT Position FROM position");
while ($posi = mysql_fetch_array($ergebnis))
{
echo "<option value=\"" . $posi['Position'] . "\">";
echo $posi['Position'];
echo "</option>\n";
}
echo "</select>\n";
?>
</div>
<br />
<h7>Nachname:</h7>
<div id="eingabe"><INPUT NAME="name" size="20"/>
</div>
<br />
<h7>Vorname:</h7>
<div id="eingabe"><INPUT NAME="vorname" size="20"/>
</div>
<br />
<h7>Kaufpreis:</h7>
<div id="eingabe"><INPUT NAME="kaufpr" size="20"/>
</div>
<br />
<h7>Käufer:</h7>
<div id="eingabe">
<?php
echo "<select>";
$ergebnis = mysql_query("SELECT Teamname FROM myteam");
while ($Team = mysql_fetch_array($ergebnis))
{
echo "<option value=\"" . $Team['Teamname'] . "\">";
echo $Team['Teamname'];
echo "</option>\n";
}
echo "</select>";
?>
</div>
<br />
<input name=addspieler type=submit value=SENDEN>
Hier der PHP Code von do_addspieler.php:
PHP-Code:
<?php
echo '<pre>';
print_r($_POST);
echo '</pre>';
include ("../config/dbconfig.php");
$test = mysql_query("SELECT NName FROM spieler WHERE NName='" . mysql_real_escape_string($_POST['name']) . "'");
$test = mysql_query("SELECT VName FROM spieler WHERE VName='" . mysql_real_escape_string($_POST['vorname']) . "'");
if(mysql_num_rows($test) != 0)
{
echo "Dieser Spieler ist leider schon vergeben!<br>Bitte wähle einen anderen!";
} else if( $abschicken == ($_POST['name'] !="") ) {
echo"Bitte den Namen eingeben";
} else if( $abschicken == ($_POST['vorname'] !="") ) {
echo"Bitte den Vornamen eingeben";
} else if( $abschicken == ($_POST['kaufpr'] !="") ) {
echo"Bitte Kaufpreis eingeben";
}
else {
$kaufpr = strip_tags($_POST['kaufpr']);
$name = strip_tags($_POST['name']);
$vorname = strip_tags($_POST['vorname']);
$sql = "INSERT INTO spieler
(Kaufpreis, NName, VName)
VALUES
('".$kaufpr."',
'".$name."',
'".$vorname."')";
$eintragen = mysql_query($sql);
echo"Spieler wurde Erfolgreich eingetragen.";
}
?> -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Moin!
Das ist recht einfach zu erreichen.
Wenn Du die Options für die einzelnen Dropdowns aufbaust, must Du aus der jeweiligen Tabelle auch die passenden IDs auslesen und das Value der einzelnen Options damit vorbelegen.
Für den Verein sähe das dann so aus:
<h7>Verein Auswählen:</h7> <div id="eingabe"> <?php echo "<select name=\"verein\">"; $ergebnis = mysql_query("SELECT VID, VName FROM verein"); while ($Verein = mysql_fetch_array($ergebnis)) { echo "<option value=\" $Verein['VID'] \"> $Verein['VName'] </option>\n"; } echo "</select>"; ?> </div>
Dadurch, daß das Option Feld auch einen Namen bekommen hat (hier: verein), steht nach dem Absenden die ID des Vereins in den übergebenen Post-Daten ($vid = $_POST["verein"] ) und kann mit den Spielerdaten gespeichert werden.
SICHERHEITSHINWEIS: Immer darauf achten, daß niemand über Post-Daten deine SQL-Queries manipulieren kann (Stichwort: SQL-Injection). Niemals den Daten vertrauen, die ein User eingibt, sondern alle übergebenen Daten prüfen und potentiell gefährliche Elemente ausfiltern oder maskieren. PHP stellt mit der Funktion mysql_real_escape_string
ein Hilfsmittel für einen Basisschutz bereit.
FF
Beitrag zuletzt geändert: 12.2.2010 13:12:00 von fatfreddy -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage