• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Select mysql mit variabler feldlänge

FreddyS

Neues Mitglied
Hallo,

ich will in einem php-Programm einen Text vorgeben, nach dem in einer mysql-Tabelle gesucht werden soll (Suchtext = $_GET['text'] = variabel lang).

Ich habe dies so versucht:

$text=$_GET['text'];
$laenge = strlen($_GET['text']);
$sqlab = "select SP, ANR, ATITEL, ADAT from $tblDB";
$sqlab .= " where substr(ATEXT,0,$laenge) = '$text'";

Funktioniert aber nicht, kann mir jemand sagen, warum nicht
 
Werbung:
ich bin mir nich sicher aba fehlen da nich einfache anführungsstriche?
PHP:
$sqlab = "select SP, ANR, ATITEL, ADAT from '$tblDB'";
$sqlab .= " where substr(ATEXT,0,'$laenge') = '$text'";
 
Werbung:
sry aba ich habe mir nocheinmal deinen beitrag durchgelesen und ich verstehe nicht ganz was du erreichen möchtest?
könntest du das evtl nocheinmal genauer beschreiben?
willst du überprüfen ob der variable text in der spalte ATEXT gleich is oda überprüfen ob der variable text dieselbe länge von dem was in der spalte ATEXT steht hat?
 
Ich möchte überprüfen, ob der eingegebene text (variabel lang) in der Spalte ATEXT (textarea) ab Pos. 0 enthalten ist
 
Ich habe die Lösung, geht viel einfacher:

$text=$_GET['text'];
$sqlab = "select SP, ANR, ATITEL, ADAT from $tblDB";
$sqlab .= " where ATEXT LIKE '%$text%'";

Trotzdem vielen Dank für Deine Bemühungen
 
Werbung:
haste es denn einfach so versucht?
PHP:
$text=$_GET['text'];
$sqlab = "select SP, ANR, ATITEL, ADAT from '$tblDB' where ATEXT = '$text'";
du willst ja nur überprüfen ob der text in dieser spalte steht...
 
Die Variante mit LIKE unterstützt Wildcards und liefert den Datensatz, wenn der gesuchte String irgendwo im Feld steht, die Variante mit „=“ liefert den Datensatz nur dann, wenn das Feld genau dem gesuchten String entspricht.

Der Code ist übrigens anfällig für SQL-Injections. Nutzt unbedingt Escaping-Befehle wie mysql_real_escape_string zum Einsetzen von Benutzereingaben in SQL-Queries.

- SQL-Injection
- PHP: mysql_real_escape_string - Manual
 
Werbung:
Zurück
Oben