Platinenweib Geschrieben 21. Oktober 2010 Teilen Geschrieben 21. Oktober 2010 Hey meine Lieben, ich bin in einer Ausbildung zur FiAE und habe in meinem Übungszentrum im Betrieb die Aufgabe, eine Datenbank mit sql erstellen und dort auch die Primary Keys und foreign keys eintragen soll. --> erstes Problem: Also, die Primary Keys habe ich auch eingetragen, doch wie ich die Foreign keys rein bekomme, verstehe ich nicht so wirklich. Hab wirklich einiges ausprobiert, aber nichts hat funktioniert. So, dann kommt die 2. Aufgabe. Wenn die Datenbank steht, sollen wir eine PHP/HTML-Seite erstellen, in der ein Formular ist, in das man Dinge einträgt, die sich dann nachher in der Datenbank eintragen. --> Also, das Formular steht so weit (habe ich mit HTML gemacht!), allerdings weiß ich nicht wirklich, wie ich jetzt mit php und sql eine Verbindung zur Datenbank aufbauen kann. --> Kann mir Jemand vielleicht einen Denkanstoß geben, wie ich das machen könnte?! Mag ja nicht mal einen fertigen Lösungsweg, will ja auch etwas lernen, aber iwie kommt meine Logik grade nicht mit :D Hab bis jetzt auch noch keine Erfahrungen mit php und (my)sql gehabt, sondern nur in html und bin damit noch etwas überfordert... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
carstenj Geschrieben 21. Oktober 2010 Teilen Geschrieben 21. Oktober 2010 Hi, dabei einen "Denkanstoss" zu geben, wenn sämtliche Grundlagen fehlen, ist leider etwas schwierig, ohne komplette Büchpassagen oder Tutorials zu zitieren. Ich würde empfehlen, bei den Grundlagen anzufagen: MySQL :: MySQL 5.1 Referenzhandbuch :: 14.2.6.4 Fremdschlüssel-Beschränkungen Relationale Datenbank ? Wikipedia MySQL :: MySQL Documentation: MySQL Reference Manuals Wenn du so eine Aufgabe bekommst, und bist damit überfordert, solltest du das schon vorher abklären. Wenn man keine Erfahrung damit hat, muss man eben Zeit bekommen, sich das notwendige Wissen anzueigenen. Hab wirklich einiges ausprobiert, aber nichts hat funktioniert. Wenn du konkrete Probleme hast, ist eine Fehlermeldung immer hilfreich, weil man sich unter "nichts funktioniert" so ziemlich alles und nichts vorstellen kann. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Platinenweib Geschrieben 21. Oktober 2010 Autor Teilen Geschrieben 21. Oktober 2010 danke schon mal für deine Antwort. Ich habe meinem Ausbilder bereits gesagt, dass ich keinerlei Erfahrung in dem Bereich habe und er meinte, ich soll einfach mal ein wenig rumprobieren... Hab aber auch ein wenig Zeit dafür. Allerdings möchte ich das diese Woche schon durch haben, da wir nächste Woche mit neuen Themen in MySQL beginnen... Danke für die Links, die werde ich mir auf jedenfall speichern und mal durchlesen. Gibt es vielleicht noch iwelche Tutorials, die man empfehlen würde? Eben zu Übungszwecken... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tore1209 Geschrieben 21. Oktober 2010 Teilen Geschrieben 21. Oktober 2010 Hi um eine Verbindung zwischen einer PHP-seite und Mysql-Datenbank zu erstellen benötigtes du die folgenden Befehle. Mysql_conntect --> PHP: mysql_connect - Manual Mysql_select_db --> PHP: mysql_select_db - Manual mysql_query --> PHP: mysql_query - Manual ich hoffe das hilft dir fürs erste tore1209 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Platinenweib Geschrieben 22. Oktober 2010 Autor Teilen Geschrieben 22. Oktober 2010 @tore, ja, es hat mich um einiges weiter gebracht. Bin auch um einiges weiter gekommen, allerdings weiß ich nicht, wie ich jetzt weiter machen muss. Hier ist das Skript, das ich bisher habe: <?php $db_host = "localhost"; $db_user = "root"; $db_pass = ""; $db_name = "terminkalender"; if (isset( $_POST['eintragen'] )) { //Inhalte aus POST holen $datum = $_POST['datum']; $titel = $_POST['titel']; $beschreibung = (int) $_POST['beschreibung']; // Verbindung oeffnen und Datenbank ausweahlen $conID = mysql_connect( $db_host, $db_user, $db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" ); if ($conID) { mysql_select_db( $db_name, $conID ); } // Anfrage, die an die Datenbank geschickt werden soll $sql = "INSERT INTO 'terminkalender' ('datum', 'titel', 'beschreibung',) VALUES( '" .mysql_real_escape_string( $datum ). "', '" .mysql_real_escape_string( $titel ). "', '" .mysql_real_escape_string( $beschreibung ). "' )"; // Schickt die Anfrage an die DB und schreibt die Daten in die Tabelle mysql_query( $sql ); // Pruefen ob der neue Datensatz tatsaechlich eingefuegt wurde if (mysql_affected_rows() == 1) { echo "<h3>Der Datensatz wurde hinzugefügt!</h3>"; } else { echo "<h3>Der Datensatz konnte <strong>nicht</strong> hinzugefügt werden!</h3>"; } } ?> //Formular <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Terminkalender</title> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="formular" id="formular"> <h1> Termin eintragen </h1> <form action="input_text.html"> <p>Datum (YYYY-MM-DD):<br><input name="datum" type="text" size="30" maxlength="30"></p> <p>Titel:<br><input name="titel" type="text" size="30" maxlength="40"></p> <p>Beschreibung:<br><input name="beschreibung" type="text" size="50" maxlength="200"></p> <br> <input type="submit" name="submitbutton" id="submitbutton" value="Senden" /> </form> </body> </html> Wenn ich das Skript ausprobieren möchte, Daten in das Formular eingegeben habe und auf den "Senden"-Button klicke, kommt nur die Meldung, dass die Webseite nicht angezeigt werden kann. Liegt das daran, dass ich Fehler im Skript habe oder muss ich vllt. noch etwas hinzufügen?! Stehe grade etwas auf dem Schlauch! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tore1209 Geschrieben 22. Oktober 2010 Teilen Geschrieben 22. Oktober 2010 guten morgen, im deinen Code ist zweimal das <Form action................ enthalten. Du hast jetzt Möglichkeiten entweder du erstellt, zwei Dateien eine als HTML und die zweite als PHP. Wobei die HTMl Datei das Formular und die PHP Datei die Datenbank verbindung enthält usw. Oder die andere Möglichkeit ist du rufts die PHP-datei selbst auf. Ich bevorzeuge lieber die erste variante. Ihr findete ich fehler schneller. Grüß tore1209 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Platinenweib Geschrieben 22. Oktober 2010 Autor Teilen Geschrieben 22. Oktober 2010 danke für deine Hilfe. Bin da beinahe verzweifelt :D Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Platinenweib Geschrieben 22. Oktober 2010 Autor Teilen Geschrieben 22. Oktober 2010 ok, der eine Fehler ist behoben (Webseite kann nicht angezeigt werden). Doch jetzt ist mein Problem, dass die Daten nicht in die Datenbank eingetragen werden... grrr...selbst mein ausbilder findet den fehler nicht... xD Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 22. Oktober 2010 Teilen Geschrieben 22. Oktober 2010 Du solltest Dir so etwas den vollständigen SQL Select immer ausgeben lassen!: ('datum', 'titel', 'beschreibung',) diese Zeile ist falsch Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FinalFantasy Geschrieben 22. Oktober 2010 Teilen Geschrieben 22. Oktober 2010 Bei solchen Fehlern gehe ich immer einen der folgenden Wege: Es gibt auch sowas wie mysql_error(), das man abfragen kann und sich so evtl. einen sinnvolle Fehlermeldung rausfischen kann. Die einfachere und meistens auch schon zielführende Möglichkeit ist, sich einfach den voll zusammengebauten Query-String ausgeben zu lassen, diesen dann zu kopieren und versuchen direkt in der MySQL-DB auszuführen. Meistens ist nur die Query fehlerhaft und MySQL gibt dann eine verständliche Fehlermeldung. Dann solange an der Query rumschrauben, bis sie durchgeht und dann das ganze zurück ins PHP-Skript übertragen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Platinenweib Geschrieben 22. Oktober 2010 Autor Teilen Geschrieben 22. Oktober 2010 Vielen Dank für eure ganzen Hilfen!! Es klappt jetzt alles und ich u. mein Ausbilder haben endlich Fehler endlich korrigieren können! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.