PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   MySql suche (http://www.selfphp.de/forum/showthread.php?t=19180)

Chris_M 17.04.2008 20:16:20

MySql suche
 
moin

Ich brauch dringent hilfe von euch Profis

erstmal hier mein DB aufbau
DB: musterbau
Tabelle: MotorRad
Spallten: id, Bezeichnung

ich hab mir ein suchscript gebastelt wo ich in der Spallte Bezeichnung Z.b. Bridestone suchen möchte in den Zeile steht "Bridestone 190/65R17" (als beispiel) nu soll er mir die ganze Spallte Bezeichnung nach Bridestone suchen (sind etwas 400 Bridestone, 300 Dunlop usw) und die ganzen zeilen ausgeben mit der davor stehenden id, nur bekomm ich eine fehlermeldung, ich poste mal fix mein Script

PHP-Code:

<?php 
error_reporting
(E_ALL);    
include 
'config.php';    // Konfigurationsdatei laden 
@mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) OR
        die(
"Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());
            
mysql_select_db(MYSQL_DATABASE) OR
                    die(
"Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());         

$eingabe "Bridstone";

$eingabe_array explode(' ',$eingabe); 

$query 'select * from table MotorRad where '//anfang der abfrage 

    
for($i 0$icount($eingabe_array); $i++){ 
      
$query .= "(Bezeichnung like '%".$eingabe_array[$i]."%')";  
            
//ob der $i-te begriff in einer spalten enthalten ist (mit oder verknüpft) 
        
if($icount($eingabe_array)-1){ 
            
$query .= ' and '
        } 
        
//verknüpfung der einzelnen worte mit und 
    


$result mysql_db_query('musterbau',$query); //anfrage an die datenbank 
    
$num_news mysql_num_rows($result); //anzahl der zurückgegebenen datensätze 
    
for($i 0$i $num_news$i++){ 
        
$id mysql_result($result,$i,'id'); //abfrage der id von der datenbank 
        
$Bezeichnung mysql_result($result,$i,'Bezeichnung'); //abfrage der Bezeichnung 
        
echo '<a href="show.php?id='.$id.'">'.$Bezeichnung.'</a><br>'//links auf die seite show_news.php  
    

?>

Fehlermeldung:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/******test.php on line 25

Ich bin schon 3Tage dabei das prob zulösen aber ich komm einfach nicht weiter.
Was hab ich hier falsch gemacht?
Habt ihr ein kleinen Tip für mich Bitte?

mfg

Chris_M 17.04.2008 21:21:35

AW: MySql suche
 
ui, sorry bin ja in der falschen Ecke gelandet

Kann mich bitte wer verschieben -> MYSQL

Sorry

JuliusCaesar 17.04.2008 21:27:55

AW: MySql suche
 
ich gehe mal davon aus, die fehlermeldung bezeiht sich auf diese zeilen
PHP-Code:

$result mysql_db_query('musterbau',$query); //anfrage an die datenbank 
    
$num_news mysql_num_rows($result); //anzahl der zurückgegebenen datensätze 

warum probiert du nicht anstatt mysql_db_query mysql_query.
Da brauchste nur die abfrage anzugeben, die db wird vorher mit mysql_select_db ausgewählt ;)

Chris_M 17.04.2008 21:34:36

AW: MySql suche
 
nabend,

Ich denke mal du meinst das so:
PHP-Code:

$result mysql_query($query); //anfrage an die datenbank 
    
$num_news mysql_num_rows($result); //anzahl der zurückgegebenen datensätze 

geht aber auch nicht macht immer noch den selben fehler

Er scheind ein problem mit mysql_num_rows($result); zuhaben aber ich weiss nicht warum

The Serious Sam 17.04.2008 22:03:00

AW: MySql suche
 
mach doch mal
PHP-Code:

$result mysql_query($query) or die(mysql_error()); 

wenn ne fehlermeldung kommt fehler beheben oder posten ;)

mfg

lukgestach 17.04.2008 22:23:02

AW: MySql suche
 
lass dir mal mit echo den $query string ausgeben, vielleicht findest du ja so den Fehler hinaus!
Wenn ich so ein problem habe ist es das erste den $query und mysql_error(); auszugeben, meistens findet man so den Fehler heraus!

Gruss Lukas

Chris_M 18.04.2008 13:42:55

AW: MySql suche
 
Malzeit,

jetzt steh ich richtig aufm schlauch :(

ich hab das mit:
PHP-Code:

$result mysql_query($query) or die(mysql_error());  //anfrage an die datenbank 

versucht und er meint:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table MotorRad where (Bezeichnung like '%Bridestone%')' at line 1

Ich habs auch schon ohne Klammern versucht aber da sagt er das selbe nur halt ohne Klammern
Ich könnte mir vorstellen das ich in folgener Zeile ein fehler hab
PHP-Code:

 $query .= "(Bezeichnung like '%".$eingabe_array[$i]."%')";  
            
//ob der $i-te begriff in einer spalten enthalten ist (mit oder verknüpft) 

wüsste aber nicht was es sein könnte, habt ihr vielleicht eine idee?

lukgestach 18.04.2008 16:49:56

AW: MySql suche
 
och, ich hab den fehler:
Zitat:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table MotorRad where (Bezeichnung like '%Bridestone%')' at line 1
lass mal das table weg!
Code:

SELECT * FROM MotorRad WHERE Bezeichnung like.....
Gruss Lukas

Chris_M 18.04.2008 17:03:54

AW: MySql suche
 
malzeit,

och ne ich glaubs nicht, naja die Flüchtigkeitsfehler :)

Aller besten dank für eure hilfe :)

MFG Chris_m


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:43:53 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.