Unknown column 'M' in 'where clause'

ahh

Mitglied
Hallo,

habe folgendes Problem.

Ich möchte einen ganz bestimmten Datensatz anzeigen lassen.

Habe einmal den Datensatz 098 und einmal 098-M

Nun möchte ich das der Datensatz 098-M angezeigt wird was aber immer mit einer Fehlermeldung endet.

Unknown column 'M' in 'where clause'

Wenn ich den Datensatz 098 anzeigen lasse funktioniert es einwandfrei.


include 'config.inc.php';
$db=@mysql_connect("$host","$user","$pw") or die("Konnte keine Verbindung mit dem Datenbankserver aufbauen");
@mysql_select_db("$database",$db);
$aa="098-M";

$result = mysql_query("SELECT * FROM $table1 where LNR=$aa") or die(mysql_error());
echo $aa;
while($row = mysql_fetch_array($result)) {


Für all eure Hilfe ein riesiges DANKE :)
 
Das sollte es tun:
PHP:
$result = mysql_query("SELECT * FROM $table1 where LNR='$aa'") or die(mysql_error());

redlama
 
Hallo,

danke für eure Hilfe.

@ Golz : Bei deinem Vorschlag kommt eine Fehlermeldung

Parse error: parse error, unexpected T_LNUMBER in .../html/html/2.php on line 8

@redlama: Bei deinem Vorschlag kommt nur noch eine weiße Seite


wie schon gesagt wenn ich nach 098 suche gehts einwandfrei nur wenn ich nach dem
Datensatz 098-M suche dann kommt ein Fehler.
Es muss also an der Varieable liegen das es nicht geht.

Wer kannn mir weiter helfen?
 
Mach doch mal ein "echo $result;", dann weißt Du, was genau an die Datenbank übergeben wird. Vielleicht kannst Du da ja schon den Fehler erkennen. Wenn nicht kannst Du das Ergebnis ja mal posten und wir schauen mal drauf.

redlama
 
@redlama:

Sorry dein Vorschlag war schon Richtig, denn jetzt wird der Datensatz 098-M angezeigt.

Sobald ich aber jetzt nach 098 suche kommt die Leere Seite.


Müsste ich vieleicht schon bei der übergabe der Variablen etwas ändern.

Text und Zahl?
 
setzt doch das Textfeld, in das du den Text eingibst als suche.

PHP:
 $result = mysql_query("SELECT * FROM $table1 where LNR='$textfeld'") or die(mysql_error());

die ausgabe kannst du dann ganz normal lassen
 
Wenn es einen Datensatz gibt, der die LNR "098" hat, dann sollte es so gehen, wenn Du jetzt allerdings alle Datensätze haben willst, die mit "098" anfangen, dann muss Dein select Statement anders aussehen:
Code:
SELECT * FROM $table1 where LNR like '$aa%'

redlama
 
redlama hat gesagt.:
Wenn es einen Datensatz gibt, der die LNR "098" hat, dann sollte es so gehen, wenn Du jetzt allerdings alle Datensätze haben willst, die mit "098" anfangen, dann muss Dein select Statement anders aussehen:
Code:
SELECT * FROM $table1 where LNR like '$aa%'

redlama

du hast vergessen, dass er nur EINEN Datensatz angezeigt haben will.

bei deinem Statement zeigt er alle an ^^

bei meinem muss man mit einer eingabe und einer Ausgabe arbeiten.
 
Zurück