phpbar.de logo

Mailinglisten-Archive

[php] php3 -> php4 : mysql_query funzt nicht mehr

[php] php3 -> php4 : mysql_query funzt nicht mehr

friedhelm betz php_(at)_phpcenter.de
Sun, 10 Jun 2001 16:15:42 +0200


Hallo Ekkard,
you wrote:
>> >   Warning: Supplied argument is not a valid MySQL-Link
>> >   resource in /home/gerlach/web/veranst/test.php on line 8
>> > <?php
>> >  $connect = mysql_connect("localhost","web","web");
>> >  $db=mysql_select_db("veranst",$connect);
>> >  echo mysql_error();

>> > $SQL="select V_NR from veranst;";
>> > $result = mysql_query($SQL,$db);    <<== Zeile 8
>> 
1.Variante:
>> -> $result = mysql_query($SQL,$connect);
>> Der link-identifier ist bei Dir $connect, $db wählt die Datenbank aus
>> und gibt nur true oder false zurück.

> oder:
2. Variante:
>>  $result = mysql_query($SQL);

> Danke! Beides geht! Ich verstehe zwar nicht warum 
Das solltest Du aber :-)
Kurze Erklärung:
mysql_query() kann zwei Parameter entgegennehmen:
1. Parameter: das Sql-statement, vom Typ string; das was bei Dir in
$SQL steht. Dieser muss angegeben werden.
2.Parameter: optional,  eine Verbindungs-Kennung zu dem Mysql-Server, den Du
ansprechen willst, Typ integer. Diese Verbindungs-Kennung liefert die
Funktion mysql_connect(), bei Dir $connect.
Mit dem erfolgreichen Aufruf von mysql_connect() erhältst Du also eine
Verbindungs-Kennung. Diese wird automatisch für alle weiteren Aufrufe
der mysql-Funktionen genutzt, deshalb funktioniert die 2.Variante.
Die 1.Variante funktioniert, weil eben dieser 2.Parameter korrekt
angegeben wurde, und das ist bei Dir nun mal $connect und nicht $db.

> bei zahlreichen php3-Beispielen im Internet genau
> meine, d.h. die falsche Notation verwendet wurde, 
> aber jetzt gehts.
Ist doch egal, wenn die falsch sind, dann sind sie falsch.
>  Habe nicht im Traum daran gedacht, 
> dass da der Fehler liegt. 
Träumen hilft nicht, eher Manual lesen :-)  -> MySql-Funktionen.
> Gruss
> Ekkard
Gruesse
 Friedhelm




php::bar PHP Wiki   -   Listenarchive