Sie haben die Syntax falsch; Es ist nicht erforderlich, einen Punkt in eine Zeichenfolge in doppelten Anführungszeichen zu setzen. Stattdessen sollte es eher wie
aussehen$query = mysql_query("SELECT * FROM table WHERE the_number LIKE '$prefix%'");
Sie können dies bestätigen, indem Sie die Zeichenfolge ausdrucken, um zu sehen, dass sie identisch mit dem ersten Fall ausfällt.
Natürlich ist es keine gute Idee wegen der Gefahr der SQL-Injection einfach Variablen in die Abfragezeichenfolge einzufügen. Zumindest sollten Sie den Inhalt der Variablen manuell mit mysql_real_escape_string
maskieren , wodurch es vielleicht so aussehen würde:
$sql = sprintf("SELECT * FROM table WHERE the_number LIKE '%s%%'",
mysql_real_escape_string($prefix));
$query = mysql_query($sql);
Beachten Sie, dass innerhalb des ersten Arguments von sprintf
das Prozentzeichen muss verdoppelt werden, damit es einmal im Ergebnis erscheint.