SQL Anweisung funktioniert nicht

Hallo, ich bin relativ neu hier und das ist das erste Mal, dass ich eine Website mit einer SQL Datenbank erstelle. In der Schule habe ich SQL Abfragen gelernt und wollte sie hier entsprechend umsetzen. Auf meine Anfrage SELECT Adresse FROM Videos WHERE ID = '1'; entgegnete php allerdings nur, dass es damit nichts anfangen kan Parse error: syntax error, unexpected 'Adresse' (T_STRING) Ich habe nach einer Lösung gesucht, aber kann den Fehler nicht finden. Die Verbindung zum Server muss auf jeden Fall geklappt haben. Immerhin habe ich keine entsprechende Fehlermeldung finden können.
Ich hoffe, dass ihr mir helfen könnt.

Eh, du schreibst das so, als hättest du die SQL-Abfrage direkt in die PHP-Datei geschrieben …?
Du musst schon eine dafür geeignete MySQL-Extension verwenden, z.B.: php.net/manual/de/book.mysqli.php

Ansonsten: Zeig’ mal den ganzen Code.

Mfg :wink2:

Vielen Dank, jetzt hat es klick gemacht und ich habe meinen Fehler gefunden. Tatsächlich habe ich das einfach so in die PHP-Datei geschrieben :smiley:
In dem von mir angesehen Beispiel wurde es als Text gespeichert und durch mysql_query($strSQL); ausgeführt. Ich schicke dir mal meine Indexdatei. Vielleicht kannst du mir noch einige Tipps geben ^^

[code]

Korallvids <link rel="stylesheet" type="text/css" href="styles.css"
//um einen eingerahmten Bereich ganz links zu erzeugen

Videos
//Startseite Profil
//eine Accountfunktion wird noch implementiert Administration
//ebenfalls noch nicht implementiert

//oben ist ein Bereich, mit dem man Videos sortieren kann <?php if($_GET["filtr1"] != "eigen") //wenn man keine erweiterte Sortierung gewählt hat {echo "

Neuste Videos Aelteste Videos Beste Videos Eigene Sortierung

";} else {echo "Vieles wünscht sich der Mensch, und doch bedarf er nur wenig. -Johann Wolfgang von Goethe (1749 - 1832), deutscher Dichter der Klassik, Naturwissenschaftler und Staatsmann";} //entschuldigt die noch nicht existente erweiterte Sortierfunktion ^^ ?>
//eigentlicher Videoeintrag <?php $verbindung = mysql_connect("localhost", "korallvids", "passwort") or die ("Fehler beim Connect"); mysql_select_db("korallvids") or die("Fehler bei der Selection"); $link = SELECT Adresse FROM Videos WHERE ID = '1'; //als kleiner Test mysql_close() echo "" ?>
[/code]

Vieles ist nicht funktionsfähig und einiges wollte ich noch komplett umstrukturieren.
Der Code ist eine einzige Baustelle, aber vielleicht kannst du mir ja allgemein ein paar Tipps geben ^^

Abgesehen von den kleineren und größeren Syntaxfehlern, die dir noch um die Ohren fliegen werden…

$link = SELECT Adresse FROM Videos WHERE ID = '1'; //als kleiner Test

Strings musst du in Anführungszeichen setzen.
php.net/manual/de/language.types.string.php

Eine SQL-Anweisung musst du dann mit der entsprechenden Query-Funktion ausführen. Das Ergebnis, das du haben willst, ist jedoch (für gewöhnlich) nicht einfach der Rückgabewert der Funktion, wie es in deinem Code etwa angedeutet wird. Sieh dir dazu aber bitte ein Tutorial deiner Wahl an, davon gibt’s Millionen.

Verwende nicht die mysql-API. Die gilt als veraltet und wird bald entfernt. Benutze mysqli (oder PDO), das ich dir in meinem ersten Post verlinkt habe.

Wenn du Single-Quotes ( ’ ) und Double-Quotes ( " ) geschickt verwendest, sparst du dir das unnötige Maskieren der Quotes in deinem HTML-Code.

Außerdem kannst du dir unnötige echos bei Kontrollstrukturen ersparen, wenn du ohnehin keinen dynamischen Inhalt einbettest. Siehe dazu hier: php.net/manual/de/control-struct … syntax.php

Mfg :wink2:

OK, vielen Dank. Ich hab mein Ergebnis jetzt durch folgenden Code erreicht:

$sqltext = "SELECT Adresse FROM Videos WHERE Art= 'Meinung'"; $sqltext = mysql_query($sqltext); $sqltext = mysql_fetch_array($sqltext); $link = $sqltext[Adresse]; mysql_close();
Das Ganze funktioniert, erscheint mir aber ein wenig aufwendiger, als es sein sollte. Ich schaue mir das Ganze mal genauer an. Gehören meine verwendeten “Befehle” auch zu den veralteten?
Vielen Dank nochmal :wink:

Ja.
php.net/manual/de/mysqlinfo.api.choosing.php

Vielen Dank. Dann werde ich wohl eher mysqli benutzen.
Übrigens: Schönes Seite hast du gemacht. Die Witze haben mich echt zu lachen gebracht. :smiley: