Autor Zpráva
Tomkorp
Profil *
Zdravím jem lama a mám problém.

V MySQL v tabulce mám učebnice, kde je obchodní číslo, název, nakladatelství, zaměření atd. a mám udelané vyhledávání podle obch. č, názvu, nakladatelství atd.

mysql_query("SELECT * FROM `ucebnice` where nakladatelstvi like '$nakladatelstvi' or obch_c = '$obch_c' or nazev = '$nazev' ");

to funguje, ale když udelám stránkování a dam vyhledat např. podle nakladatelství tak mi to vyhodí první stranu s učebnicemi a odkazy na dalsí stránky, ale když kliknu na další stranu tak tam nic neni.

Problém je vtom, že když kliknu na další stranu tak proměnná ($nakladatelstvi) je prázdná.

Zkusil jsem to vyřešit přes SESSION ($_SESSION[nakladatelstvi]) ale to nefunguje.

Nevíte někdo co stím?

Dik

P.S.: Celej kod:



<fieldset>
<legend>Hledat</legend>
<table>
<form action="#" method="post">
<tr>
<td>Objednací číslo: </td><td><input name="obch_c" type="text" class="in"></td>
<td>Nakladatelství: </td><td>
<select name="nakladatelstvi" type="text" class="se">
<option value=""></option>
<option value="Agris">Agris</option>
<option value="Albra">Albra</option>
</select>
</td>
</tr>
<tr>
<td>ISBN: </td><td><input name="isbn" type="text" class="in"></td>
<td>Předmět: </td><td>
<select name="predmet" type="text" class="se">
<option value=""></option>
<option value="Ostatní produkce">Ostatní produkce</option>
<option value="Ekonomické předměty">Ekonomické předměty</option>
</select>
</td>
</tr>
<tr>
<td>Název: </td><td><input name="nazev" type="text" class="in"></td>
<td>Zaměření:</td><td>
<select name="zamereni" type="text" class="se">
<option value=""></option>
<option value="Základní školy">Základní školy</option>
<option value="Střední školy">Střední školy</option>
</select>
</td>
</tr>
<tr>
<td>Autor: </td><td><input name="autor" type="text" class="in"></td>
</tr>

<tr>
<td colspan="3"><input name="odeslat" type="submit" value="Hledat" class="tlacitko"></td>
</tr>
</form>
</table>
</fieldset>




<?php
require_once '_db.php';
$obch_c = $_POST[obch_c];
$isbn = $_POST[isbn];
$nazev = $_POST[nazev];
$autor = $_POST[autor];
$nakladatelstvi = $_POST[nakladatelstvi];
$predmet = $_POST[predmet];
$zamereni = $_POST[zamereni];
$odeslat = $_POST[odeslat];

$start = $_GET['start'];

if(!isset($start)) {
$start = 0;
}

$prispevku = "10"; // pocet prispevku na jedne strance

$vypis = @mysql_query("SELECT * FROM `albra_ucebnice` where
nakladatelstvi like '$nakladatelstvi' or obch_c = '$obch_c' or nazev = '$nazev' order by `obch_c` desc limit " .
$start . ", " . $prispevku . "");

$pocet = @mysql_num_rows(mysql_query('SELECT * from `albra_ucebnice`'));


// delime
$smitec = ceil($pocet/$prispevku);

while($pole=mysql_fetch_array($vypis )){
?>


<div class="obal_kniha">
<div class="nadpis_kniha">
<h5><?echo $pole[nazev]?></h5>
</div>
<div class="obr_kniha">
<?echo $pole[obr]?>
</div>
<div class="popis_kniha">

<strong>Objednací číslo:</strong> <?echo $pole[obch_c]?><br/>
<strong>ISBN:</strong> <?echo $pole[isbn]?><br/>
<strong>Autor:</strong> <?echo $pole[autor]?><br/>
<strong>Nakladatelství:</strong> <?echo $pole[nakladatelstvi]?><br/>
<strong>Předmět:</strong> <?echo $pole[predmet]?><br/>
<strong>Zaměření:</strong> <?echo $pole[zamereni]?><br/>
<span class="cena"><strong>Cena s DPH:</strong> <?echo $pole[cena_dph]?></span><br/>
</div>
<div class="ks_kniha">
<input name="cena" type="text" value="0" class="uc"/> Ks
<input name="odeslat" type="submit" value="Přidat do košíku" class="">
<a href="index.php?page=e_shop&obch_c=<?echo $pole[obch_c]?>">Info</a>
</div>
</div>
<?php
;
}



for ($i = 1; $i <= $smitec; $i++) {

if (($i*$prispevku)<$pocet) {
echo "<a href='index.php?page=e_shop&start=" . ($i*$prispevku-$prispevku) . "'>" .
($i*$prispevku-($prispevku-1)) . "-" . ($i*$prispevku) . "</a> | ";
} else { // u posledniho vypisu se nevytiskne svislitko
echo "<a href='index.php?page=e_shop&start=" . ($i*$prispevku-$prispevku) . "'>" .
($i*$prispevku-($prispevku-1)) . "-" . $pocet . "</a>";
}

}

?>
Tomkorp
Profil *
Ještě oprava. V části kde je

$vypis = @mysql_query("SELECT * FROM `albra_ucebnice` where
nakladatelstvi like '$nakladatelstvi' or obch_c = '$obch_c' or nazev = '$nazev' order by `obch_c` desc limit " .
$start . ", " . $prispevku . "");

má být LIKE místo "="

Správně je to:

$vypis = @mysql_query("SELECT * FROM `albra_ucebnice` where
nakladatelstvi like '$nakladatelstvi' or obch_c like '$obch_c' or nazev like '$nazev' order by `obch_c` desc limit " .
$start . ", " . $prispevku . "");
Alphard
Profil
kód se mi nechce číst, ale v části, kde generuješ odkazy na další stránky bych jednoduše přidal get parametr s vyhledávaným výrazem, např. stranka.php?page=6&hledej=kockopes
Tomkorp
Profil *
Už to maká :O)
Nešlo to protože jsem to posílal z formuláře pře POST. Změnil jsem to na GET a už to jde.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0