Grunge
Erfahrenes Mitglied
Hallo,
ich baue gerade an einer Membersuche für eine Datenbank. Folgendes Problem tut sich dabei auf:
Ich habe eine Seite "search.php". Jene enthällt ein Formular, welches Suchinformationen hat (nickname, alter .. .. ..) diese daten werden an die "search_action.php" geleitet und ausgewertet. Hier ersteinmal die search_action.php:
Wie man sehen kann werden die Suchkriterien in eine Variable gespeichert, und dann an den query gehangen. Die Ausgabe funktioniert auch ganz gut soweit, diese funktioniert nämlich so: (den get-wert sort und art kann man vernachlässigen wie ihr gleich sehen werdet):
wie ihr vielleicht bemerkt habt, kann die sortier funktion im query vergessen - da ja für jeden nick ne eigene abfrage gemacht wird, anders ist es aber in diesem beispiel ja nicht zu realisieren.
Könnt ihr mir sagen wie ich die Ausgabe trotzdem sortieren kann !?
Danke im Vorraus
ich baue gerade an einer Membersuche für eine Datenbank. Folgendes Problem tut sich dabei auf:
Ich habe eine Seite "search.php". Jene enthällt ein Formular, welches Suchinformationen hat (nickname, alter .. .. ..) diese daten werden an die "search_action.php" geleitet und ausgewertet. Hier ersteinmal die search_action.php:
Code:
<?php
include "_functions.php";
$suche="";
//Prüfen welche Suchkriterien ausgefüllt worden sind
if($_POST['search_1']==""){
$suche=$suche;
}else{
$suche="nickname LIKE '%".$_POST['search_1']."%'";
}
[...]
$sql="SELECT * FROM usr_profile WHERE ".$suche."";
$result=mysql_query($sql) or die(mysql_error());
$user="";
$i=1;
while($row=mysql_fetch_assoc($result)){
$v="user_".$i;
$$v=$row['nickname'];
if(isset($_POST['search_8'])) {
$img=1;
$img_check="SELECT * FROM usr_images WHERE nick='".$row['nickname']."' AND standard='1'";
$result_check=mysql_query($img_check) or die(mysql_error());
if (mysql_fetch_assoc($result_check)){
if($user==""){
$user=$v."=".$$v;
}else{
$user=$user."&".$v."=".$$v;
}
}
}else{
$img=0;
if($user==""){
$user=$v."=".$$v;
}else{
$user=$user."&".$v."=".$$v;
}
}
$i++;
}
$i=$i-1;
echo "<meta http-equiv=\"refresh\" content=\"0; url=index.php?section=search&sort=nickname&art=Aufsteigend&count=".$i."&searched=1&".$user."\">";
?>
Wie man sehen kann werden die Suchkriterien in eine Variable gespeichert, und dann an den query gehangen. Die Ausgabe funktioniert auch ganz gut soweit, diese funktioniert nämlich so: (den get-wert sort und art kann man vernachlässigen wie ihr gleich sehen werdet):
Code:
for($i=1;$i<=$_GET['count'];$i++){
$v="user_".$i;
if($_GET['art']=="Absteigend"){
$profile="SELECT * FROM usr_profile WHERE nickname='".$_GET[$v]."' ORDER BY ".$_GET['sort']." ASC";
echo $profile."<br>";
$result=mysql_query($profile) or die(mysql_error());
}else{
$profile="SELECT * FROM usr_profile WHERE nickname='".$_GET[$v]."' ORDER BY ".$_GET['sort']." DESC";
echo $profile."<br>";
$result=mysql_query($profile) or die(mysql_error());
}
while ($row=mysql_fetch_assoc($result)){
.
.
.
Könnt ihr mir sagen wie ich die Ausgabe trotzdem sortieren kann !?
Danke im Vorraus