Abfragen kombinieren/Ergebniss übernehmen

Sketty

Grünschnabel
Hallo Leute,

habe einen Datenbank mit News erstellt. Die Ausgabe funktioniert prima. Das nur eine bestimmte Anzahl gezeigt werden funktioniert, mit weiter und zurück-Links. Habe eine Suchfunktion eingebaut, die ebenfalls funktioniert. Sowie 2 Links zum sortieren des Datums, abwärts und aufwärts. Funktioniert ebenfalls alles.

Nun mein Problem. Ich hätte gerne die Möglichkeit, die Ergebnisse der Suchfunktion ebenfalls nach Datum auf und ab sortieren zu können. Allerdings, wenn ich bei den Ergebnissen der Suchfunktion auf den Link auf oder ab klicke, werden wieder alle News sortiert angezeigt. Und nicht die Ergebnisse der Suchfunktion.

Hier der Codeschnippsel für den Bereich Suchergebnisse:


$suche = $_REQUEST['search'];

$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%'";
$ergebnis = mysql_query($anfrage);

if (!$ergebnis)
{
echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
exit();
}

if ($_REQUEST['order'] == 'DESC')
{
$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%' ORDER by datum_news DESC ";
$ergebnis = mysql_query($anfrage);
if (!$ergebnis)
{
echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
exit();
}
}
if ($_REQUEST['order'] == 'ASC')
{
$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%' ORDER by datum_news ASC ";
$ergebnis = mysql_query($anfrage);
if (!$ergebnis)
{
echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
exit();
}
}

?>
<form action="search_news.php" method="post" name="search">
<?php
echo "Suchen:";
?>
<input style="width: 200px;" type="text" name="search" size="30" maxlength="30" />
<button name="search" value="search" type="submit" id="search">suchen</button>
</form><br />
sortiern nach Datum:
<?

echo "<a href=\"".$_SERVER['PHP_SELF']."?order=DESC\">up</a>|||";
echo "<a href=\"".$_SERVER['PHP_SELF']."?order=ASC\">down</a><br /><br />";

Danke für die Hilfe
 
soweit wie ich das sehe, übergibst du bei deiner suche nicht die suchanfrage, die aber doch wichtig für die ausgabe der suche ist.

probiere es doch mal wie folgend:
PHP:
echo "<a href=\"".$_SERVER['PHP_SELF']."?order=DESC&search=".$suche."\">up</a>|||";
echo "<a href=\"".$_SERVER['PHP_SELF']."?order=ASC&search=".$suche."\">down</a><br /><br />";

damit solltest du ja bei der sortierung die suche mit übergeben.
 
nun reagieren die up und down links gar nicht mehr.


$suche = $_REQUEST['search'];

$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%'";
$ergebnis = mysql_query($anfrage);

if ($_REQUEST['order'] == 'DESC' || $suche)
{
$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%' ORDER BY datum_news DESC ";
$ergebnis = mysql_query($anfrage);
if (!$ergebnis)
{
echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
exit();
}
}
if ($_REQUEST['order'] == 'ASC' || $suche)
{
$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%' OR title_news LIKE '%$suche%' ORDER BY datum_news ASC ";
$ergebnis = mysql_query($anfrage);
if (!$ergebnis)
{
echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
exit();
}
}

?>
<form action="search_news.php" method="post" name="search">
<?php
echo "Suchen:";
?>
<input style="width: 200px;" type="text" name="search" size="30" maxlength="30" />
<button name="search" value="search" type="submit" id="search">suchen</button>
</form><br />
sortiern nach Datum:
<?

echo "<a href=\"".$_SERVER['PHP_SELF']."?order=DESC&search=".$suche."\">up</a>|||";
echo "<a href=\"".$_SERVER['PHP_SELF']."?order=ASC&search=".$suche."\">down</a><br /><br />";
 
Hallo Sketty.
Setze deine Code-Schnippsel doch bitte in die Code Tags:
[*SPRACHE] ... [/*SPRACHE]
bsp.:
[*PHP] ... [/*PHP]

(dabei die * weglassen)
 
PHP:
<?php

$suche = $_REQUEST['search'];

$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%'";
$ergebnis = mysql_query($anfrage);

if ($_REQUEST['order'] == 'DESC' || $suche)
   {
       $anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%' ORDER BY datum_news DESC ";
       $ergebnis = mysql_query($anfrage);
    if (!$ergebnis)
       {
          echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
          exit();
       }
   }
if  ($_REQUEST['order'] == 'ASC' || $suche)
   {
       $anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%' OR title_news LIKE '%$suche%' ORDER BY datum_news ASC "; 
       $ergebnis = mysql_query($anfrage);
    if (!$ergebnis)
       {
          echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
          exit();
       }
   }
   
?>
<form action="search_news.php" method="post" name="search">
<?php		     
echo "Suchen:";
?>
<input style="width: 200px;" type="text" name="search" size="30"  maxlength="30" />
<button name="search" value="search" type="submit" id="search">suchen</button>			               
</form><br />
sortiern nach Datum:
<?

echo "<a href=\"".$_SERVER['PHP_SELF']."?order=DESC&search=".$suche."\">up</a>|||"; 
echo "<a href=\"".$_SERVER['PHP_SELF']."?order=ASC&search=".$suche."\">down</a><br /><br />";
 
okay hat sich erledigt, habe es selber hinbekommen.

PHP:
<?php


$suche = $_REQUEST['input_search'];

$anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%'";
$ergebnis = mysql_query($anfrage);

if ($_REQUEST['order'] == 'DESC')
   {
       $anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%'OR title_news LIKE '%$suche%' ORDER BY datum_news DESC ";
       $ergebnis = mysql_query($anfrage);
    if (!$ergebnis)
       {
          echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
          exit();
       }
   }
if  ($_REQUEST['order'] == 'ASC')
   {
       $anfrage = "SELECT * FROM newsdatenbank WHERE text_news LIKE '%".$suche."%' OR title_news LIKE '%$suche%' ORDER BY datum_news ASC "; 
       $ergebnis = mysql_query($anfrage);
    if (!$ergebnis)
       {
          echo "Die Anfrage ist fehlgeschlagen!" . mysql_error();
          exit();
       }
   }
   
?>
<form action="search_news.php" method="post" name="form_search">
<?php		     
echo "Suchen:";
?>
<input style="width: 200px;" type="text" name="input_search" size="30"  maxlength="30" />
<button name="search" value="search" type="submit" id="search">suchen</button>			               
</form><br />
sortiern nach Datum:
<?

echo "<a href=\"".$_SERVER['PHP_SELF']."?order=DESC&input_search=".$suche."\">up</a>|||"; 
echo "<a href=\"".$_SERVER['PHP_SELF']."?order=ASC&input_search=".$suche."\">down</a><br /><br />";
 

Neue Beiträge

Zurück