PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mysql andere Version andere Ausführung ?



fight-night
18-11-2005, 14:43
Mysql andere Version andere Ausführung ?

--------------------------------------------------------------------------------

Hallo, kleines Problem ich betreibe eine Datenbank mit MySQL 3.23.37, wo folgende Abfrage tadellos funtioniert
--------------------------------------------------------------------------
<?php
if(!isset($query) || empty($query))
{$query = "select * from hurt where Titel like '$anfrage%'";}
$query=stripslashes($query);
mysql_connect ("localhost", "geheim", "geheim")
or die("Keine Verbindung zur Datenbank");
mysql_select_db("geheim") or
die("Datenbank nicht gefunden!");
$ergebnis = mysql_query($query) or
die( mysql_error() );
$anz_spalten = mysql_num_fields($ergebnis);
//echo "<b>SQL Anfrage: $query</b>";
//Tabellenkopf erstellen
echo "<table width=\"100%\"align=\"top\" bordercolor =\"003366\" border = 1>\n";
echo "<tr align = \"top\">\n";

for ($i=0; $i<$anz_spalten; $i++)
{
echo "<th>" . mysql_field_name($ergebnis, $i). "</th>\n";
}

echo "</tr>\n";//Ende Tabellenkopf
//Rumpf der Tabelle erstellen
while ($zeile = mysql_fetch_row($ergebnis))
{
echo "<tr align=left>\n";
for ($i=0; $i<$anz_spalten; $i++)
{
echo "<td>";
if (!isset($zeile[$i])) //auf null prüfen
{echo "NULL";}
else
{
echo $zeile[$i] ;
}
echo "</td>\n";
}
echo "</tr>\n";
}
echo "</table>";

?>
--------------------------------------------------------------------------
Nun habe ich die Tabelle samt Server auf einem neuen System aufgesetzt , läuft soweit alles prima mit MySQL-Version 4.1.13 aber bei dieser Abfrage kommt egal was man einträgt immer die ganze Tabelle als Ergebnis was eigentlich nicht sein soll ?Könnte das evt. auch an einer neueren PHP Version liegen ?

Pingu
18-11-2005, 14:51
Kann es vielleicht sein, daß Du auch PHP auf einen neueren Stand gebracht hast?
Kann es sein daß Deine Scripts nicht sauber programmiert wurden und deswegen von register_globals abhängen (siehe Manual)?
Weswegen folgende Anweisung

if(!isset($query) || empty($query))
{$query = "select * from hurt where Titel like '$anfrage%'";}

immer zu folgender Anweisung evaluiert wird:
$query = "select * from hurt where Titel like '%'";



Pingu

fight-night
18-11-2005, 15:47
mhh wie gesagt das Script funzt auf dem "alten "server wunderbar aber auf dem neuen nicht mehr und ja die neuste PHP Version ist auf dem neuen System . Wie müßte die Abfrage da umgestellt werden ?

Pingu
18-11-2005, 16:55
Lies bitte das Manual: http://de3.php.net/globals

Pingu