Portal > Foren > PHP > PHP-Programmierung > datenbank verbindung
Antwort
 
Themen-Optionen
Alt 21.04.2007, 18:49 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 21.01.2006
Beiträge: 17
Standard datenbank verbindung

Hallo
Bei der Verbindung zur mysql datenbank erhalte ich seit ein paar Wochen folgende Fehlermeldung.
HTML-Code:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #1' at line 1
Hier ist der php code
PHP-Code:
<?
$db=mysql_connect("localhost","root","test");
mysql_select_db("test");
mysql_query($db) or die(mysql_error());
?>
Der Daten stimmen eigentlich. Wo könnte der Fehler liegen?
Steven Gerrard ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.04.2007, 19:05 Nach oben    #2
Christian Mühlroth
 
Benutzerbild von Chr!s
 
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 561
Standard

$db kommt von mysql_connect() und ist daher eine resource, und kein MySQL-Query. mysql_query() erwartet aber eine Anweisung als String.
__________________
http://www.ChrisDiary.De
Chr!s ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.04.2007, 19:17 Nach oben    #3
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

zwar kann man die resource mit übergeben, aber als zweiten wert:
PHP-Code:
<?
$q = "SELECT * [...]";
$db=mysql_connect("localhost","root","test");
mysql_select_db("test");
mysql_query($q, $db) or die(mysql_error());
?>
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.04.2007, 21:34 Nach oben    #4
Neuer Benutzer
 
Registriert seit: 21.01.2006
Beiträge: 17
Standard

Sorry ich hab leider chr!s seine Beschreibung nicht ganz verstanden(liegt aber daran, dass ich noch blütiger anfänger bin=) wie ist das genau gemeint mit "$db kommt von mysql_connect() und ist daher eine resource" und kann ich das Problem auch anders lösen als wenn ich die $q mit übgergebe
Steven Gerrard ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.04.2007, 21:43 Nach oben    #5
Benutzer
 
Benutzerbild von xabbuh
 
Registriert seit: 03.12.2005
Ort: Osnabrück
Beiträge: 75
Standard

Hallo,

mysql_query() ist dafür da, eine Abfrage an den MySQL-Server zu senden, damit dieser die Abfrage ausführt. Dementsprechend musst du dieser Funktion als erstes Argument auch die gewünschte Abfrage übergeben, die ausgeführt werden soll.

Optional kannst du als zweiten Parameter noch die Verbindungskennung der Verbindung übergeben, die mysql_query() nutzen soll. Das ist dann wichtig, wenn du mehrere Verbindungen zu unterschiedlichen Datenbankservern aufbaust, damit entschieden werden kann, an welchen dieser Server die Abfrage geschickt werden soll.
Die so benötigte Verbindungskennung ist der von chr!s angesprochene Rückgabewert von mysql_connect(), der in deinem Beispiel in der Variablen $db gespeichert ist.

Gruß
Christian
xabbuh ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.04.2007, 23:09 Nach oben    #6
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.211
Standard

xean hat dir die Lösung schon genannt. Schau dir den Code nochmal genau an!
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 24.04.2007, 16:20 Nach oben    #7
Johannes Schlichenmaier
 
Benutzerbild von Jojo
 
Registriert seit: 26.08.2005
Ort: Mannheim
Beiträge: 397
Standard

Ich empfehle dir dazu mal zwei Tutorials:

1. http://www.tutorial.bekaan.org und dort speziell das Kapitel "MySQL"
2. http://tut.php-q.net/ und dort ab Kapitel 31.

Das sollte helfen...
__________________
In the beginning was the word
and the word was content-type: plain/text

heute code ich, morgen debug ich und uebermorgen cast ich die koenigin auf int
Jojo ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


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

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Entwurfsproblem: Aus Widgets in Datenbank schreiben? Basti PHP-Programmierung 3 29.03.2007 13:13
Verbindung zu Modem klappt von Laptop aus nicht Mirod Tools, Server, Betriebssysteme 3 21.10.2006 00:36
Problem bei Verarbeitung von Templates (Eigene Klassen) dago PHP-Programmierung 21 31.08.2006 16:02
Datenbank und Sicherheit sparrow Datenbanken 23 05.11.2005 17:45
Datenbank Verwaltung taskin73 Datenbanken 7 30.07.2005 17:07


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:23 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44