Hallo Leute,
vorab möchte ich erwähnen, dass ich ein PHP Anfänger bin und hier keine fertige Lösung erwarte. Denkanstöße, Links und paar Tips währen sehr sehr hilfreich.
Ich habe eine Mysql Tabelle und den Inhalt kann ich auslesen lassen.
Eine Suchfunktion hab ich auch integriert. (Waren fertige Codeschnipsel, einige Befehle kann ich auch schon interpretieren).
Hier der Code:
Jetzt möchte ich den Inhalt der Tabelle oder die Suchergebnisse mit einem Dropdown menü sortieren lassen. Das hab ich gefunden:
Das funktioniert leider nicht. Ich bekomme keine Fehlermeldung. Nur "Auswahl: 333" ausgegeben.
Hab auch schon einige andere Codeschnipsel versucht, hat leider nichts richtig funktioniert.
Habt ihr ne idee wie ich das kombinieren kann?
vorab möchte ich erwähnen, dass ich ein PHP Anfänger bin und hier keine fertige Lösung erwarte. Denkanstöße, Links und paar Tips währen sehr sehr hilfreich.
Ich habe eine Mysql Tabelle und den Inhalt kann ich auslesen lassen.
Eine Suchfunktion hab ich auch integriert. (Waren fertige Codeschnipsel, einige Befehle kann ich auch schon interpretieren).
Hier der Code:
PHP-Code:
function getUser($suchfeld, $page)
{
$page = (int) $page;
if ($page <= 0) $page=1;
if(!empty($suchfeld)) {
$suchfeld = trim($suchfeld);
$suchfeld = str_replace(" ","%",$suchfeld);
$suchfeld = "%".$suchfeld."%";
$sql = " SELECT
*
FROM
teste
WHERE
Title LIKE '$suchfeld' OR
ProductCategoryName LIKE '$suchfeld'" ;
}
else {
$sql = " SELECT
*
FROM
teste";
}
$res = mysql_query($sql);
$anz = mysql_num_rows($res);
$itperpage = 20;
$maxpages_int = (int) ($anz/$itperpage);
$maxpages_float = $anz/$itperpage;
if ( $maxpages_float > $maxpages_int ) {
$maxpages = (int)(($anz/$itperpage)+1);
} else {
$maxpages = (int)(($anz/$itperpage));
}
if ($page > $maxpages) $page = $maxpages;
$sql2 = $sql." ORDER BY ArtNumber DESC limit ".(($page-1)*$itperpage).",$itperpage";
$res2 = mysql_query($sql2);
$anz2 = mysql_num_rows($res2);
if($anz > 0) {
if(empty($suchfeld)) {
$head = "
<table width='500' border='0' cellspacing='1' cellpadding='1'><tr>
<td><strong>$anz User in der Datenbank. Pro Seite werden $itperpage User
angezeigt.</strong></td></tr></table>";
} else {
if($anz > 1) { $wortlaut = "wurden"; } else { $wortlaut = "wurde"; }
$head = "
<table width='500' border='0' cellspacing='1' cellpadding='1' ><tr>
<td><strong>Mit Ihrer Suchabfrage $wortlaut $anz Treffer
gelandet.</strong></td></tr></table>";
}
$i = 0; // Eine Zählvariable für unterschiedliche Zeilenfarben
$navi_left = ""; // HTML - Teil der Navigation zum zurückblättern
$navi_right = ""; // HTML - Teil der Navigation zum weiterblättern
$userliste = ""; // HTML - Inhalt der Userliste
$show_navi = ""; // HTML – Beinhaltet die Navigation und das Suchfeld
// Start der WHILE Schleife
while ($row = mysql_fetch_array($res2, MYSQL_ASSOC)) {
// Hier wird die Zeilenhintergrundfarbe für jeden Datensatz festgelegt,
// dies dient der Übersicht
if($i%2==0) { $trcolor = "#FFFFFF"; } else { $trcolor = "#DADADA"; }
if ($page > 1){
$navi_left = "<strong><input type=button value=\"«\"
onClick=\"pageset($page-1)\" style=\"WIDTH:25px\"></strong>";
}
if ($page < $maxpages){
$navi_right = "<strong><input type=button value=\"»\"
onClick=\"pageset($page+1)\" style=\"WIDTH:25px\"></strong>";
}
if(isset($_POST['suchfeld']) && !empty($_POST['suchfeld'])) {
$val_suchfeld = $_POST['suchfeld'];
} else {
$val_suchfeld = "";
}
$show_navi =
"
<form name='form1' method='post' action='schuhe.php' style='margin:0px;padding:0px'>
<table width='500' border='0' cellspacing='1' cellpadding='1'>
<tr>
<td width='50%'>
<input type=button value=\"Seite\" style=\"WIDTH:50px\" onClick=\"pageset2()\">
<input name='page' type='text' id='page' value='$page' style=\"WIDTH:60px\">
von $maxpages $navi_left$navi_right
</td>
<td width='60%'><div align = 'right'>
Suchen: <input name='suchfeld' type='text' id='suchfeld' value = '$val_suchfeld'
style=\"WIDTH:120px;HEIGHT:16px\">
<input type=submit value=\"Finden\" style=\"WIDTH:45px\">
<input type=hidden name=page_no value=\"$page\">
</div></td>
</tr>
</table>
</form>
";
$userliste = $userliste .
"
<tr bgcolor = '$trcolor'>
<li class='item'> <a href='$row[Deeplink1]'><img src='$row[Img_url]' max-width='140px' height='230px' ></a><br> <big><b>$row[Title]</big></b><br> $row[DisplayPrice]<br>
$row[ProductCategoryName]<br>
$row[Geschlecht] </a>
</tr>
";
$i++; // Zählschleife um 1 erhöhen
}// WHILE Schleife abschließen
} else {
$userliste = "
<tr>
<td colspan='5'><div align='center'>Keine Ergebnisse fuer Ihre Suche!<br><br>
<a href='schuhe.php'>Zurck zur Artikelliste</a></div>
</td>
</tr>";
}
$fertig = "
$userliste
</table>
";
return $head.$show_navi.$fertig;
} // Funktion schließen – FERTIG
$MYSQL_HOST = "*";
$MYSQL_USER = "*";
$MYSQL_PW = "*";
$MYSQL_DB = "*";
$conn = mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PW); /* verbindet zu MySQL an sich */
mysql_select_db($MYSQL_DB, $conn); /* verbindet zu der gewählten Datenbank auf dem Server */
?>
<TITLE>Blaetterfunktion mit Navigator und Suchfunktion</TITLE>
<script language="JavaScript" type="text/javascript">
function pageset(wert)
{
document.form1.page_no.value = wert;
document.form1.submit();
}
function pageset2()
{
document.form1.page_no.value = document.form1.page.value;
document.form1.submit();
}
</script>
<?
// Aufruf der Funktion getUser() mit Suchbegriff und Seitennummer
echo $show = getUser($_POST['suchfeld'],$_POST['page_no']);
?>
PHP-Code:
<form method="POST" action="schuhe.php">
<p>
<select size="1" name="sortieren">
<option value="1"> </option>
<option value="3">aufsteigend</option>
<option value="4">absteigend</option>
</select><input type="submit" value="Auswählen" name="B1"></p>
</form>
</div>
<ul class="ourHolder">
<?php
include "head.php";
$wert = 3;
if (isset($_POST['sortieren'])) $wert = $_POST['sortieren'];
echo "Auswahl: ", $wert, "3", $_POST['sortieren'];
if ($wert = "3") $sSQL = "SELECT * FROM teste ";
else
echo "$wert ist nicht 0";
$sSQL = "SELECT * FROM teste WHERE DisplayPrice ORDER BY DisplayPrice ASC";
$rs = mysql_query($sSQL) or die ("Fehler in der Datenbank-Abfrage!");
echo"<table>";
?>
Hab auch schon einige andere Codeschnipsel versucht, hat leider nichts richtig funktioniert.
Habt ihr ne idee wie ich das kombinieren kann?
Kommentar