Volltextsuche auf Webseite für MySQL Tabelle

Sieht Grundsätzlich gut aus bis auf die Tatsache das, ( laut deinem phpmyadmin Bild ) deine Tabelle nicht css_customer_database_4 heisst sondern css_custom_database_4
 
Sieht Grundsätzlich gut aus bis auf die Tatsache das, ( laut deinem phpmyadmin Bild ) deine Tabelle nicht css_customer_database_4 heisst sondern css_custom_database_4

Jetzt verzweifel ich schon bald an mir selbst.....danke für den Fehlerhinweis.
Ich habe es nun ausgebessert, jedoch wertet er mir noch immer keine Suchergebnisse auf meiner Webseite aus.

Hier habe ich mal den kompletten Code für die search.html stehen:

PHP:
<?php 
if (isset($_POST['submit'])){ 
$suchwort = $_POST['suchwort']; 




$link = mysql_connect('localhost', 'USER', 'USERPSW') 
    OR die(mysql_error()); 

$db_selected = mysql_select_db('MEINE_DATENBANK', $link); 
if (!$db_selected) { 
    die ('Can\'t use mysql_database : ' . mysql_error()); 
} 

$queryString = "Select css_custom_database_4, field_18 from css_custom_database_4 where css_custom_database_4, field_18 like '%" . mysql_real_escape_string($suchwort) . "%'"; 

$result = mysql_query($query);  





if (!$result) { 
    echo "Could not successfully run query ($sql) from DB: " . mysql_error(); 
    exit; 
} 

if (mysql_num_rows($result) == 0) { 
    echo "Es wurde kein Suchergebnis gefunden."; 
    exit; 
} 

while ($row = mysql_fetch_assoc($result)) { 
    echo $row["field_18"]; 
}  

}
 
Ich krieg langsam kopfschmerzen.
Schau dir mal das an
PHP:
$queryString = "Select css_custom_database_4, field_18 from css_custom_database_4 where css_custom_database_4, field_18 like '%" . mysql_real_escape_string($suchwort) . "%'";

Hattest du nicht grade selber geschrieben das es so aussehen muss

PHP:
$queryString = "Select css_custom_database_4.field_18 from css_custom_database_4 where css_custom_database_4.field_18 like '%" . mysql_real_escape_string($suchwort) . "%'";
 
Ich krieg langsam kopfschmerzen.
Schau dir mal das an
PHP:
$queryString = "Select css_custom_database_4, field_18 from css_custom_database_4 where css_custom_database_4, field_18 like '%" . mysql_real_escape_string($suchwort) . "%'";

Hattest du nicht grade selber geschrieben das es so aussehen muss

PHP:
$queryString = "Select css_custom_database_4.field_18 from css_custom_database_4 where css_custom_database_4.field_18 like '%" . mysql_real_escape_string($suchwort) . "%'";

Ja sorry ich habe es vorhin probiert mit (,) und mit (.) !
Aber hat beides nicht funktioniert.
Aber wenn ich in meinen Suchfeld einen Begriff aus der Datenbank eingebe, werde ich auf die Suchergebniss seite weitergeleitet und er Zeigt mir den kompletten Code an mit Datenbankzugriff-Details!! Das sollte nicht so sein vermute ich mal schwer :-)
 
hmm..

könnte evtl an deiner "search.html" Datei liegen... (wie du hier geschrieben hast)

PHP parst normalerweise "*.php"-Dateien und keine "*.html"-Dateien.
 
hmm..

könnte evtl an deiner "search.html" Datei liegen... (wie du hier geschrieben hast)

PHP parst normalerweise "*.php"-Dateien und keine "*.html"-Dateien.


Jetzt wird es kompliziert und ich hoffe wir bekommen es gepacken.

Also mein Suchfeld liegt in einem lexikon.html und der Code sieht folgendermaßen aus:
PHP:
<form method="post" action="SUCHERGEBNISAUSWERTUNGSSEITE.html bzw. php">
<input type="text" name="suchwort">
<input type="submit" name="submit" value="Suchen">

Meine Suchauswertungsseite ist derzeit eine .html Seite mit folgenden Code:
PHP:
<?php 
if (isset($_POST['submit'])){ 
$suchwort = $_POST['suchwort']; 

$link = mysql_connect('localhost', 'USER', 'USERPSW') 
    OR die(mysql_error()); 

$db_selected = mysql_select_db('DATENBANK', $link); 
if (!$db_selected) { 
    die ('Can\'t use mysql_database : ' . mysql_error()); 
} 
$queryString = "Select css_custom_database_4.field_18 from css_custom_database_4 where css_custom_database_4.field_18 like '%" . mysql_real_escape_string($suchwort) . "%'";  

$result = mysql_query($query);  

if (!$result) { 
    echo "Could not successfully run query ($sql) from DB: " . mysql_error(); 
    exit; 
} 
if (mysql_num_rows($result) == 0) { 
    echo "Es wurde kein Suchergebnis gefunden."; 
    exit; 
} 
while ($row = mysql_fetch_assoc($result)) { 
    echo $row["field_18"]; 
}  
}

Wenn ich nun die Suchauswertungsseite in eine .php Seite ändern möchte bekomme ich folgende Fehlermeldung:
The PHP page content is run through eval, and as such you can not manually include '<?php' tags.

Ich glaube es stört ihm das <?php und bilde mir ein bereits gelesen zu haben dass man dies mit einem echo umgehen kann. Ist dies korrekt?
 
Datei in .php umbenennen und alle <?php bzw. ?> Tags entfernen.

Eventuell funktionierts. Nachdem das Problem anscheinend mit IP.Content zusammenhängt welches ich nicht kenne kann ich nur raten.
 
Datei in .php umbenennen und alle <?php bzw. ?> Tags entfernen.

Eventuell funktionierts. Nachdem das Problem anscheinend mit IP.Content zusammenhängt welches ich nicht kenne kann ich nur raten.

Ich sehe da kennt sich jemand aus :-)

Ich habe nun die änderung durchgeführt und bekomme ohne <?php bzw. ?> wieder die Fehlermeldung:
Could not successfully run query () from DB: Query was empty

Ich habe nochmals meine phpMyAdmin Daten kontrolliert und diese stimmen.
 
Der Fehler geht auf meine Kappe
PHP:
$result = mysql_query($query);
müsste eigentlich
PHP:
$result = mysql_query($queryString);
heissen
 
Der Fehler geht auf meine Kappe
PHP:
$result = mysql_query($query);
müsste eigentlich
PHP:
$result = mysql_query($queryString);
heissen

Das hat ja schon einmal einen Teilerfolg geliefert.

So habe ich deine Änderung durchgeführt und einmal einen Titel eingetragen wo ich weiss das es diesen gibt.
Er hat gesucht aber mir kein Ergebnis geliefert, nur das leere Template.

Ich habe dann einmal versucht einfach nach nichts zu suchen und haben den Suchen Button geklickt.
Dann habe ich folgende Fehlermeldung erhalten.

PHP:
Could not successfully run query () from DB: Table 'MEINEDATENBANK.css_custom_database_4' doesn't exist

Ich denke das gibt aufschluss / ich hoffe :(
 
Zurück