Fehler mit MySQL

daHooligan
Hy leutz,

ich bau grad ein link-management, mit dem man seine Links verwalten kann. Das ganze wird in ner relativ einfachen MYSQL-DB gespeichert.
Jetzt würde ich gerne im Falle eines Mehrfach-Eintrags für eine Ziel-seite einen fehler ausgeben, der mir sagt, welche nr der Link zu der Seite hat, der schon in der DB eingetragen ist. Das gnze ist im Prinzip theoretisch mit einer SELECT-Anfrage zu lösen, funktioniert aber bei mir net so ganz.

gebe ich als Befehl

-PHP-
$erg = mysql_query("SELECT nr FROM links WHERE ziel = 'ziel'" , $dbh);
-/PHP-

an, funktioniert das ganze wunderbar und ich bekomme die richtige Ausgabe

mit
-PHP-
$ziel = "ziel";
$erg = mysql_query("SELECT nr FROM links WHERE ziel = $ziel" , $dbh);
-/PHP-

werden aber alle Einträge in der DB ausgewählt???

kann es sein, dass das WHERE nicht mit in Verbindung mit einer Variable geht, oder hab ich das nur falsch kapiert????
Sorry, dass ich das so komisch formatiert habe, aber mit "[PHP]" hat der Eintrag gesponnen....

MfG


daHool
max77
Hi daHool;

ich würde das mal so schreiben:
php:
1:
<?php $erg mysql_query("SELECT nr FROM links WHERE ziel = ".$ziel$dbh?>


Weis nicht so genau, ob das mit den Variablen in einem String immer so toll funktioniert.

Gruß Dirk
daHooligan
so hats hier auch net funktioniert, bei allen anderen Variablen, die ich ausprobiert habe gehts, nur bei $ziel net, warumauchimmer.

inzwischen hab ichs mit ....ziel='$ziel'.... hingekriegt, ich kapier aber auch net so ganz, warums so geht und anders net
jimmy
Hi,

du muss deine SQL-Abfrage richtig formulieren.
Was bedeutet in deinem Fall $ziel?

Hast du in DB-Tabelle mehrere Datensätze, wo $ziel auch vorhanden ist?
Wenn ja, dann muss du noch eine Anweisung, mit "AND ...", in deinem SQL-Befehl definieren.
daHooligan
na ja...
$ziel ist eben ne Variable, die ich an das Script übergeben habe und dieser Wert ist in der Spalte "ziel" irgendwo gespeichert und ich möchte eben den Rest dazu....
$ziel kann in ziel nur ein mal vorkommen, weil ziel primärschlüssel ist

hab es aber inzwischen hinbekommen (steht oben)