Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
mysql query problem [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
mysql query problem


 
odlo
31-08-2004, 15:09 
 
Hallo Jungs

Ich krig mein script einfach nicht hin, bin nahe am verzweifeln.

Frage:
Ich möchte eine Suche über meine Tabelle laufen lassen. Mein Scipt funtioniert schon ganz gut aber da ist eine Sache die ich nicht hinkrig.

Zur erklärung: Meine Select anweisung funtioniert nur wenn ich die Variable $auswahl weglasse und durch einen festen Wert ersetze. Warum?
Die Variable $auswahl kommt von einem Select Feld und die Variable $suchbegriff aus einem Textfeld.

if ($_POST['suche']) {
$suchbegriff=$_POST['suchbegriff'];
$auswahl=$_POST['auswahl'];
}//end if

MySQLConnect();
if ($query == "")
{
$query = "SELECT * FROM t_phonebook WHERE".$auswahl."LIKE '".$suchbegriff."%'";
}//end if

$result = MySQLQuery($query);

Ich nehme also jede Hilfe an.

Dank euch schon mal

 
em-!x
31-08-2004, 15:12 
 
leerzeichen wären nicht schlecht nach where, außerdem solltest du addslashes() benutzen (der sicherheit wegen)

 
wahsaga
31-08-2004, 15:14 
 
Original geschrieben von odlo
Ich nehme also jede Hilfe an.
gut.
dann verwende bitte ab jetzt und für in alle zukunft :-) immer mysql_error, wenn du eine query an die DB abgesetzt hast:

$blah = mysql_query("...") or die(mysql_error();


ausgabe ...?


(vermutlich fehlen einfach die leerzeichen vor und nach ausgabe)

 
derHund
31-08-2004, 15:18 
 
außerdem solltest du addslashes() benutzen (der sicherheit wegen) mysql_real_escape_string()

 
mrhappiness
31-08-2004, 15:20 
 
wenn du's als bedingung für LIKE einsetzt, dann musst du % und _ noch zusätzlich maskieren (nur der vollständigkeit halber)

 
odlo
31-08-2004, 15:34 
 
hallo zusammen

Möchte mich ganz hertzlich bei Euch bedanken für die schnelle Hilfe.

Die Lösung wahren die Abstände zwischen WHERE und vor LIKE

danks a lot

 
marc75
31-08-2004, 15:34 
 
Original geschrieben von derHund
mysql_real_escape_string()

nur ab = PHP 4 >= 4.3.0, PHP 5

sonst ohen _real


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:56 Uhr.