suchergebnisse "selektieren"

...bevor irgendein missverständnis entsteht, nochmal kurz erklärt...

hersteller anklicken --> automatisch immer LIMIT 10

jetzt kann der user wählen: Treffer anzeigen: 25 | 50 | 75

zamo76
 
Achso, sorry. Oben der Code geht schon, aber du musst notebooks.php?maxtreffer=15 verwenden, nicht limit ;). Hier nochmal:
PHP:
$limit = (isset($_GET['maxtreffer']) && $_GET['maxtreffer'] > 0) ? mysql_real_escape_string($_GET['maxtreffer']) : 10; // 10 ist dann Standart, wenn kein Maxwert übergeben wird

"... LIMIT ".intval($limit).";
 
...mhhh?

also ich teste es gerade so:

PHP:
$limit = (isset($_GET['maxtreffer']) && $_GET['maxtreffer'] > 0) ? mysql_real_escape_string($_GET['maxtreffer']) : 2;

mit:

PHP:
notebooks.php?maxtreffer=3

von diesem hersteller stehen insgesamt 3 angebote zur verfügung...aber auf klick wird wieder ein leeres ergebnis geliefert...
 
PHP:
$qry = mysql_query("... LIMIT ".intval($limit)) or die(mysql_error());

Muss jetzt leider Schule, sollte aber so klappen, wie ich hier geschrieben hab. Wenn nicht, dann poste nochmal die ganze Query. Und übergibst du überhaupt die ID des Herstellers mit, bzw. den Hersteller? Also notebooks.php?hersteller=toshiba&maxtreffer=25 oder wird automatisch ein bestimmter Hersteller in der Query gewählt und man muss keinen mit übergeben?
 
Zuletzt bearbeitet:
...tja, also irgendwie immer noch ein leeres ergebnis. ich poste mal ne runde:

PHP:
$limit = (isset($_GET['maxtreffer']) && $_GET['maxtreffer'] > 0) ? mysql_real_escape_string($_GET['maxtreffer']) : 2;

$sql= mysql_query("SELECT * FROM `angebote` WHERE `kat`='notebooks' AND `hersteller` = '".mysql_real_escape_string($_GET['hersteller'])."' ORDER BY `".mysql_real_escape_string($orderby)."` LIMIT ".intval($limit)) or die(mysql_error());

hoffentlich habe ich jetzt keinen bockmist gemacht?
 
...ich übergebe den hersteller nicht...aber wäre wahrscheinlich sinnvoller?

wahrscheinlich müsste man

$hersteller = mysql_real_escape_string($_GET['hersteller']);
$limit = (isset($_GET['maxtreffer']) && $_GET['maxtreffer'] > 0) ? mysql_real_escape_string($_GET['maxtreffer']) : 2;

miteinander verbinden!?

wenn ich es so mache:

notebooks.php?hersteller=Sony&maxtreffer=3

dann es!
 
Zuletzt bearbeitet:
also irgendwie hier etwas nicht:

bei folgendem code wird bei nem klick auf beschreibung ( z.b. 60 GB ) das richtige ergebnis angezeigt, aber bei nem klick auf den hersteller ( z.b. Sony ) zeigt er mir alle produkte an. verwende ich AND der hersteller, aber die beschreibung zeigt kein ergebnis...

PHP:
WHERE `kat`='notebook' AND `hersteller` = '".mysql_real_escape_string($_GET['hersteller'])."'  OR `beschreibung` LIKE '".mysql_real_escape_string($_GET['beschreibung'])."%' ORDER BY `".mysql_real_escape_string($orderby)."` LIMIT ".intval($limit)) or die(mysql_error());

...mache ich einen denkfehler?
 
Achte bitte einmal mehr auf Deine Auszeichnung der Zeichenkettenoperatoren .

PHP:
<?php

$qry = "SELECT
                                 `name`, `beschreibung`, `etc...` 
                   FROM 
                                 `notebooks`  
                   WHERE 
                                 `kat` = `notebook` 
                   AND 
                                 `hersteller` = '".mysql_real_escape_string($_GET['hersteller'])."'  
                   OR    
                                 `beschreibung`
                            
                   LIKE 
                                 '".mysql_real_escape_string($_GET['beschreibung'])."%'
                   ORDER BY 
                                 '".mysql_real_escape_string($orderby)."' 
                   LIMIT 
                                 '".intval($limit)."'
        "; 

?>
 
Zurück