SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 08.02.2010, 17:07:13
Cien Cien ist offline
Anfänger
 
Registriert seit: Feb 2010
Alter: 36
Beiträge: 19
Dropdown Menü ID's übergeben

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.";
}  

?>
Mit Zitat antworten
  #2  
Alt 08.02.2010, 17:19:11
Xor Xor ist offline
Anfänger
 
Registriert seit: Aug 2008
Alter: 35
Beiträge: 124
AW: Dropdown Menü ID's übergeben

Hallo Cien und wilkommen im Forum,

Dein Vorhaben ist weit nicht so kompliziert wie es sich am Anfang vlt. anhört.

Deinen Select-Feld Code (Also in der eingabe) musst du nur dahingehen modifizieren, dass dir bei gewähltem inhalt die entsprechende ID übergeben wird. Bsp.:

PHP-Code:
<?php
                
echo "<select name=\"teamname\">";
                    
$ergebnis mysql_query("SELECT Teamname,Id FROM myteam");
                    while (
$Team mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $Team['Id'] . "\">";
                            echo 
$Team['Teamname'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>";
                
?>
Wichtig: name im Select und id in der Select/option.

Damit hast du in der Auswertung eine weitere $_POST bzw. $_GET-Variable mit dem namen $_REQUEST["teamname"] mit der gewählten Id.

Die kannst du, wie deine Text-inputs einfach mit der Query mit reinschreiben.

Mfg
__________________
Allergisch auf:
  • "Ich brauch ein Script für..."
  • "...dringend..."
  • Anfrage-->Antwort-->Nie wieder melden
Mit Zitat antworten
  #3  
Alt 08.02.2010, 17:23:53
Cien Cien ist offline
Anfänger
 
Registriert seit: Feb 2010
Alter: 36
Beiträge: 19
AW: Dropdown Menü ID's übergeben

Cool danke für die schnelle Antwort werde dies mal so umändern und hier mich melden obs geklappt hat ^^
Mit Zitat antworten
  #4  
Alt 08.02.2010, 17:24:16
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: Dropdown Menü ID's übergeben

Zu deinem Select. Erweitere den SQL-Select um die Felder der jeweiligen ID und setze im Select die ID dann als value. Somit kannst du die ID per POST übergeben und bei der Auswertung des Formulars weiter verarbeiten.
PHP-Code:
<div id="eingabe">
                <?php
                
echo "<select>";
                    
$ergebnis mysql_query("SELECT VID,VName FROM verein");
                    while (
$Verein mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $Verein['VID'] . "\">";
                            echo 
$Verein['VName'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>";
                
?>
            </div>
            <br />
            
            <h7>Position angeben:</h7>
            <div id="eingabe">
                <?php
                
echo "<select>";
                    
$ergebnis mysql_query("SELECT PID,Position FROM position");
                    while (
$posi mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $posi['PID'] . "\">";
                            echo 
$posi['Position'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>\n";
                
?>
            </div>
In deiner do_addspieler.php sind allerdings ein paar Dinge, die mir überhaupt nicht gefallen. Besonders aufgefallen ist mit das hier
PHP-Code:
$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
Das erste $test wird vom 2. $test überschrieben.
Mit Zitat antworten
  #5  
Alt 08.02.2010, 17:47:50
Cien Cien ist offline
Anfänger
 
Registriert seit: Feb 2010
Alter: 36
Beiträge: 19
AW: Dropdown Menü ID's übergeben

Zitat:
Zitat von urvater Beitrag anzeigen
[/PHP]In deiner do_addspieler.php sind allerdings ein paar Dinge, die mir überhaupt nicht gefallen. Besonders aufgefallen ist mit das hier
PHP-Code:
$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
Das erste $test wird vom 2. $test überschrieben.
Danke urvater habe dies übersehen, und schon geändert danke...

hhm habe die tips von euch befolgt, aber jetzt wird der spieler nicht angelegt!!

do_addspieler.php
PHP-Code:
else {
$kaufpr strip_tags($_POST['kaufpr']);
$name strip_tags($_POST['name']);
$vorname strip_tags($_POST['vorname']);
$tname strip_tags ($_REQUEST['teamname']);
$position strip_tags ($_REQUEST['posi']);
$verein strip_tags ($_REQUEST['verein']);

$sql "INSERT INTO spieler
                (Kaufpreis, NName, VName, TID, PID, VID)
            VALUES
               ('"
.$kaufpr."',
                '"
.$name."',
                '"
.$vorname."',
                '"
.$tname."',
                '"
.$position."'
                '"
.$verein."')";
            
$eintragen mysql_query($sql);
echo
"Spieler wurde Erfolgreich eingetragen.";

addspieler.php
PHP-Code:
            <?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 name=\"verein\">";
                    
$ergebnis mysql_query("SELECT VID,VName FROM verein");
                    while (
$Verein mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $Verein['VID'] . "\">";
                            echo 
$Verein['VName'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>";
                
?>
            </div>
            <br />
            
            <h7>Position angeben:</h7>
            <div id="eingabe">
                <?php
                
echo "<select name=\"posi\">";
                    
$ergebnis mysql_query("SELECT PID,Position FROM position");
                    while (
$posi mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $posi['PID'] . "\">";
                            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 name=\"teamname\">";
                    
$ergebnis mysql_query("SELECT TID,Teamname FROM myteam");
                    while (
$Team mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $Team['TID'] . "\">";
                            echo 
$Team['Teamname'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>";
                
?>
            </div>
Mit Zitat antworten
  #6  
Alt 08.02.2010, 17:59:41
Xor Xor ist offline
Anfänger
 
Registriert seit: Aug 2008
Alter: 35
Beiträge: 124
AW: Dropdown Menü ID's übergeben

Fehlermeldung?

Diese kannst du dir mit mysql_error() holen.
__________________
Allergisch auf:
  • "Ich brauch ein Script für..."
  • "...dringend..."
  • Anfrage-->Antwort-->Nie wieder melden
Mit Zitat antworten
  #7  
Alt 08.02.2010, 18:25:21
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: Dropdown Menü ID's übergeben

Da du nur die Formulardaten auswerten willst würde ich folgendes generell ändern.
aus
PHP-Code:
$tname strip_tags ($_REQUEST['teamname']);
$position strip_tags ($_REQUEST['posi']);
$verein strip_tags ($_REQUEST['verein']); 
Würde ich
PHP-Code:
$tname strip_tags ($_POST['teamname']);
$position strip_tags ($_POST['posi']);
$verein strip_tags ($_POST['verein']); 
machen.

Durch $_REQUEST könnte es sein, daß Variablen doppelt vorhanden sind. Beachte hierzu
Zitat:
Hinweis: Die Variablen in $_REQUEST werden dem Skript mittels der GET-, POST- und COOKIE-Inputmechanismen zur Verfügung gestellt. Daher kann der Inhalt durch einen entfernten Benutzer modifiziert worden sein und ist daher als nicht vertrauenswürdig zu betrachten. Das Vorhandensein und die Reihenfolge des Variableninhalts in diesem Array wird entsprechend der PHP-Konfigurationsdirektive variables_order bestimmt.
Mit Zitat antworten
  #8  
Alt 08.02.2010, 18:37:19
Cien Cien ist offline
Anfänger
 
Registriert seit: Feb 2010
Alter: 36
Beiträge: 19
AW: Dropdown Menü ID's übergeben

hi, wie kann ich mysql_error() das einsetzten ?
habe das einmal so eingetragen und getestet:
echo mysql_error(); kam kein fehler...

und hab das einmal so eingetragen:
mysql_error(); kam ebenfalss kein fehler!!!
werde das jetzt mit $_POST versuchen


*edit*
durch diesen Befehl
Zitat:
echo '<pre>';
print_r($_POST);
echo '</pre>';
kommt das ..
Array
(
[verein] => 1
[posi] => 2
[name] => Lahm
[vorname] => Philipp
[kaufpr] => 10000000
[teamname] => 1
[addspieler] => SENDEN
)

Spieler wurde Erfolgreich eingetragen.

sobald ich in der DB nachschaue, wurde nichts eingetragen?
Mit Zitat antworten
  #9  
Alt 08.02.2010, 18:48:38
Xor Xor ist offline
Anfänger
 
Registriert seit: Aug 2008
Alter: 35
Beiträge: 124
AW: Dropdown Menü ID's übergeben

Ob $_POST oder $_GET hängt von deinem gesetzten form-action Attribut ab.

Zitat:
aber jetzt wird der spieler nicht angelegt!!
Was heißt das jetzt? Wird in die else nicht reingegangen? Mein Caffeesud kann mir leider nicht verraten was du in der if-bedingung nach deiner Änderung aufgrund des Tipps von urvater reingeschrieben hast... Und Ohne Fehlermeldung ist selbst der Sud bissl sauer... -.-

*edit*
Dann mach mal
PHP-Code:
$eintragen mysql_query($sql) or die(mysql_error()); 
__________________
Allergisch auf:
  • "Ich brauch ein Script für..."
  • "...dringend..."
  • Anfrage-->Antwort-->Nie wieder melden
Mit Zitat antworten
  #10  
Alt 08.02.2010, 18:56:12
Cien Cien ist offline
Anfänger
 
Registriert seit: Feb 2010
Alter: 36
Beiträge: 19
AW: Dropdown Menü ID's übergeben

Danke Xor, jetzt kam einen Fehlermeldung raus wusste nicht wo ich das rein machen sollte.

Fehlermeldung: Anzahl der Felder stimmt nicht mit der Anzahl der Werte in Zeile 1 überein

addspieler.php sieht so aus...
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 name=\"verein\">";
                    
$ergebnis mysql_query("SELECT VID,VName FROM verein");
                    while (
$Verein mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $Verein['VID'] . "\">";
                            echo 
$Verein['VName'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>";
                
?>
            </div>
            <br />
            
            <h7>Position angeben:</h7>
            <div id="eingabe">
                <?php
                
echo "<select name=\"posi\">";
                    
$ergebnis mysql_query("SELECT PID,Position FROM position");
                    while (
$posi mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $posi['PID'] . "\">";
                            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 name=\"teamname\">";
                    
$ergebnis mysql_query("SELECT TID,Teamname FROM myteam");
                    while (
$Team mysql_fetch_array($ergebnis))
                        {
                            echo 
"<option value=\"" $Team['TID'] . "\">";
                            echo 
$Team['Teamname'];
                            echo 
"</option>\n";
                        }
                echo 
"</select>";
                
?>
            </div>
            <br />
            
            <input name=addspieler type=submit value=SENDEN>
            
    </div>
do_addspieler.php sieht so aus
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']) . "'");
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']);
$tname strip_tags ($_POST['teamname']);
$position strip_tags ($_POST['posi']);
$verein strip_tags ($_POST['verein']);

$sql "INSERT INTO spieler
                (Kaufpreis, NName, VName, TID, PID, VID)
            VALUES
               ('"
.$kaufpr."',
                '"
.$name."',
                '"
.$vorname."',
                '"
.$tname."',
                '"
.$position."'
                '"
.$verein."')";
            
$eintragen mysql_query($sql) or die(mysql_error());
echo
"Spieler wurde Erfolgreich eingetragen.";
}  
?>
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dropdown Auswahl wird nicht an DB übergeben ThinkFlou MySQLi/PDO/(MySQL) 13 06.01.2010 20:42:12
Dropdown Menü mit 2 Werten Schany PHP Grundlagen 1 14.02.2009 14:52:16
Fettschrift einzelner Optionen im DropDown Menü TomH27 HTML, CSS und JavaScript Help! 1 29.03.2007 23:33:06
Hilfe!! PHP MySQL und ein Dropdown Menü... Tyraell PHP Grundlagen 4 22.11.2006 16:56:49
2 Variable mit einem Dropdown an MySQL übergeben wa32 PHP für Fortgeschrittene und Experten 3 09.04.2006 20:29:05


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:10:06 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt