suche aus der datenbank

Krebsiii

Grünschnabel
Hi
Ich habe versucht mir das tutorial zum suchen von daten aus sql datenbanken
anzu passen nur irgent wie macht er mir immer den fehler

ich habe nicht so viele ahnung deswegen hoffe ich mal das mir vieleicht jemand helfen kann

Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in /usr/export/www/vhosts/funnetwork/hosting/dawnofthepain/neu/test.php on line 26


PHP:
<?php
require("config.php");
 $eingabe_array = $_SESSION["user_id"];

$dbconnect=mysql_connect("$sqlhost","$sqluser","$sqlpassword");



    $query = 'select * from table benutzerdaten where ';
    for($i=0; $i<count($eingabe_array); $i++){
     $query .= "(Id like '%".$eingabe_array[$i]."%')";
        if($i<count($eingabe_array)-1){
            $query .= ' and ';
        }

    }


$result = mysql_db_query('$sqldb',$query);
    $num_id = mysql_num_rows($result); //anzahl der zurückgegebenen datensätze
    for($i=0; $i<$num_id; $i++){
        $Id = mysql_result($result,$i,'Id');
        $Gname = mysql_result($result,$i,'Gname');
        $Brust  = mysql_result($result,$i,'Brust');

echo  $Gname $Brust;

    }
?>
 
Ok, da sind ja mehrere Fehler im Skript ;)

PHP:
$result = mysql_db_query('$sqldb',$query);
Das wird dir nicht das gewünschte Ergebnis bringen, Variablen innerhalb von einfachen Anführungszeichen werden nicht geparsed, und ich bezweifle, das deine Datenbank $sqldb heißt.

PHP:
$result = mysql_db_query($sqldb,$query);
So sollte es aussehen.
Weiterhin ist zu sagen, das [phpf]mysql_db_query[/phpf] als veraltet gilt und nicht mehr benutzt werden soll. Dafür gibt es [phpf]mysql_select_db[/phpf] und [phpf]mysql_query[/phpf].

Statt diesem Konstrukt:
PHP:
$num_id = mysql_num_rows($result); //anzahl der zurückgegebenen datensätze
    for($i=0; $i<$num_id; $i++){
        $Id = mysql_result($result,$i,'Id');
        $Gname = mysql_result($result,$i,'Gname');
        $Brust  = mysql_result($result,$i,'Brust');
Ist folgendes performanter und auch genau für diesen Zweck gemacht:
PHP:
while($row = mysql_fetch_assoc($result))
{
  echo $row['Gname'];
  echo $row['Brust'];
}

Der Fehler den du auflistet ist wahrscheinlich diese Zeile:
PHP:
echo  $Gname $Brust;
Dies ist keine gültige Verkettung. Strings verkettet man mit einem .
Z. B. so:
PHP:
echo  $Gname.$Brust;

Wobei du lieber obiges Beispiel verwenden solltest.
 
Zurück