Autor | Zpráva | ||
---|---|---|---|
Lojzik Profil * |
Ještě totok kdyby někdo všdšl tak by mně udělal radost :-) ve skriptu mám formulář kde jsou select-optiony potřebuju aby se pokud je v optionu nastaveno nezalezi nacetlo vse ze sloupce druh takto jsem to resil ale nefunguje vedel by nekdo jak na to? Celý skript je pripadne o nekolik prispevku niz jmenuje se "stranka se nacita porad dokola" p.s.takto skript nehodi zadnou chybu jen proste nefunguje, na nezalezi nenajde nic pokud vyberu jinou polozku najde vse...
if (($_POST["druh"])!="nezalezi") {$jm=($_POST["druh"]);} else $z=mysql_query("select * from auta.druh"); $navrat=mysql_db_query("inzerce", $z) or print mysql_error(); {$jm=($navrat);} |
||
Adam Zábranský Profil |
#2 · Zasláno: 5. 4. 2008, 20:43:08
Lojzik
moc nechápu co chceš, ale co má být toto? {$jm=($navrat);} ? |
||
Lojzik Profil * |
#3 · Zasláno: 5. 4. 2008, 21:04:57
to jsem jen zkoušel co to udělá :-)) má tam být "z" ale to taky nejede...
|
||
Harwen Profil |
#4 · Zasláno: 6. 4. 2008, 07:05:36
Co takhle nastavit volbě nezáleží value="%" - sql dotaz pak bude "where neco = %" a % je zástupný znak takže to vyhledá cokoliv ;-)
Vyzkoušeno ;-) |
||
Lojzik Profil * |
#5 · Zasláno: 6. 4. 2008, 07:38:48
tak jsem zkusil zadat value="%" napřed do celeho selectu posleze do optionu nezalezi + dotaz vylepšený o where neco=%
(namisto neco jsem zkousel dosazovat $jm, druh i nezalezi tzn. mozne hodnoty) ale všechno ceho jsem se dockal byl jen mysql error query was emty :-( myslis ze bys to mohl popsat trochu lepe diky |
||
Harwen Profil |
#6 · Zasláno: 6. 4. 2008, 08:29:44 · Upravil/a: Harwen
Snad to vysvětlím líp na příkladu.
Máme tyhle stránky: http://ddmjosefov.ic.cz Vybereme si fotogalerii. Pokud si vybereš konkrétní rok tak máme např. tohle: http://ddmjosefov.ic.cz/index.php?cat=fotky&year=2007 ale pokud chceme ze všech let, dostaneme tohle: year=%]http://ddmjosefov.ic.cz/index.php?cat=fotky&[b]year=% na stránce fotky.php kterou pak vkládám máme kód: <?... $year = $_GET["year"] $fotky = "select * from `fotogalerie` WHERE `year`= '$year'"; ...?> V prvním případě tedy máme dotaz: $fotky = "select * from `fotogalerie` WHERE `year`= '2007"; Takže to prostě vytáhne všechno co má ve sloupci rok 2007 ale v druhým případě máme $fotky = "select * from `fotogalerie` WHERE `year`= '%'"; % je zástupný znak, za který si můžeš dosadit cokoliv jinýho. A protože je sám, tak si za to php může dosadit cokoliv a bude po db požadovat vše a ve výseldku dostanu všechny fotogalerie nehledě na to vy jakém roce byly přidány. ¨No a je už jedno jestli to zadáváš ve formuláři nebo normálně v <a href... a je jedno jestli to je POST nebo GET, to už jen musíš upravit :-) Lepší?:-) |
||
Lojzik Profil * |
#7 · Zasláno: 6. 4. 2008, 09:27:22
jj uz chapu ale tohle asi v mym pripade nepujde pouzit viz. skript:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title></title> </head> <body> <?php session_start(); include "prihlasdb.php"; // Nastavte titul stránky a zahrňte záhlaví HTML. $titul_stranky = 'Registrace'; if (($_POST['najdi'])) { // Zpracovat formulář. if (($_POST["druh"])>0) {$jm=($_POST["druh"]);} if (($_POST["karoserie"])>0) {$prjm=($_POST["karoserie"]);} if (($_POST["palivo"])>0) {$e=($_POST["palivo"]);} if (($_POST["znacka"])>0) {$m=($_POST["znacka"]);} if (($_POST["stav"])>0) {$u=($_POST["stav"]);} if (($_POST["cena"])>0) {$x=($_POST["cena"]);} $co="SELECT auta.druh,karoserie,palivo,znacka,stav,km,cena,popis,obr,vlozeno,kraj FROM auta where znacka='".$_POST["znacka"]."' and druh='".$_POST["druh"]."' and karoserie='".$_POST["karoserie"]."' and palivo='".$_POST["palivo"]."' and stav='".$_POST["stav"]."' and kraj='".$_POST["kraj"]."' ORDER BY cena "; $navrat=mysql_db_query("inzerce", $co) or print mysql_error(); echo("<table cellpadding=\"10\" style=\"border:1px solid black;font-size:15;position:relative;top:390;width:980\">"); for ($i=0;$i<mysql_num_fields($navrat); $i++){ echo("<td><strong>".mysql_field_name($navrat, $i)."</strong></td>"); } while (list($druh,$karoserie,$palivo,$znacka,$stav,$km,$cena,$popis,$obr,$vl ozeno,$kraj) = mysql_fetch_row($navrat)) { echo("<tr><td style=\"width:70;height:50\">$druh</td> <td style=\"width:70;height:50\">$karoserie</td> <td style=\"width:70;height:50\">$palivo</td> <td style=\"width:70;height:50;font-size:14;color:blue\"><a href=\"#\">$znacka</a></td> <td style=\"width:70;height:50\">$stav</td> <td style=\"width:70;height:50\">$km</td> <td style=\"width:70;height:50\">$cena</td> <td style=\"width:170;height:50\">$popis</td> <td style=\"width:70;height:50\"><a href=\"#\"><img style=\"width: 80px; height: 60px\" src=\"inc/soubory/".$obr."\"></a></td> </td style=\"width:70;height:50\"><td>$vlozeno</td> </td style=\"width:70;height:50\"><td>$kraj</td> </tr>"); } echo("</table>"); mysql_close(); } ?> <br><br> <p style="position:absolute;top:165;font-weight:bolder;color:red">Vyhledá vání:</p> <form action="index.php?page=allform" method="post"> <div style="position:absolute;top:190;left:120"><b>Druh:</b> <SELECT name="druh"> <option>Osobní</option> <option>Nákladní</option> <option>Užitkové</option> <option>Moto</option> </SELECT> </div> <div style="position:absolute;top:190;left:290"> <b>Karoserie:</b> <SELECT name="karoserie" > <option>Sedan</option> <option>Hatchback</option> <option>Kombi,MPV,SUV</option> <option>Kupé</option> </SELECT> </div> <div style="position:absolute;top:190;left:540"> <b>Palivo:</b> <SELECT name="palivo" > <option>Benzin</option> <option>Nafta</option> <option>Lpg</option> <option>Cng</option> </SELECT> </div> <div style="position:absolute;top:215;left:105"> <b>Značka:</b> <SELECT name="znacka" > <option>Alfa Romeo</option> <option>Audi</option> <option>BMW</option> <option>Citroen</option> <option>Dacia</option> <option>Daewoo</option> <option>Ferrari</option> <option>Fiat</option> <option>Ford</option> <option>Honda</option> <option>Hyundai</option> <option>Chevrolet</option> <option>Chrysler</option> <option>Jaguar</option> <option>KIA</option> <option>Lancia</option> <option>Mazda</option> <option>Mercedes</option> <option>Mitsubishi</option> <option>Nissan</option> <option>Opel</option> <option>Peugeot</option> <option>Porsche</option> <option>Renault</option> <option>Rover</option> <option>Opel</option> <option>Saab</option> <option>Seat</option> <option>Škoda</option> <option>Subaru</option> <option>Suzuki</option> <option>Toyota</option> <option>Volvo</option> <option>Volkswagen</option> </SELECT> </div> <div style="position:absolute;top:215;left:327"> <b>Stav:</b> <SELECT name="stav" > <option>Nové</option> <option>Ojeté</option> <option>Havarované</option> <option>Náhradní díly</option> </SELECT> </div> <div style="position:absolute;top:215;left:546"> <b>Cena:</b> <SELECT name="cena" > <option>0-10000kč</option> <option>10000-150000kč</option> <option>150000-300000kč</option> <option>300000+</option> </SELECT> </div> <div style="position:absolute;top:240;left:120"> <b>Cena:</b> <SELECT name="cena" > <option>0-10000kč</option> <option>10000-150000kč</option> <option>150000-300000kč</option> <option>300000+</option> </SELECT> </div> <div align="center" style="position:absolute;top:305;left:470"><input type="submit" name="najdi" value="Hledat" /></div> </form> </body> </html> |
||
Lojzik Profil * |
#8 · Zasláno: 6. 4. 2008, 09:28:28
jo a je to tak ze potrebuju do optionu pridta hodnotu nezalezi a pak nasledne kdyz bude zadano nezalezi tak vybere vse v tom urcitem sloupci...
|
||
Harwen Profil |
#9 · Zasláno: 6. 4. 2008, 10:14:35
<option value = "%">Nezáleží</option>
Buď by mělo bejt tohle řešení nebo se nechápeme :-) |
||
Lojzik Profil * |
#10 · Zasláno: 6. 4. 2008, 10:47:06
tak to aasi fakt nechapu :-) upravil jsem skript a nic takhle:
if (($_POST['najdi'])) { // Zpracovat formulář. if (($_POST["druh"])>0) {$jm=($_POST["druh"]);} if(($_POST["druh"])=="%") { $y=mysql_query ("select * from auta where druh='%'")or print mysql_error(); $navrat=mysql_db_query("inzerce", $y); $jm=($y); } if (($_POST["karoserie"])>0) {$prjm=($_POST["karoserie"]);} if (($_POST["palivo"])>0) {$e=($_POST["palivo"]);} if (($_POST["znacka"])>0) {$m=($_POST["znacka"]);} if (($_POST["stav"])>0) {$u=($_POST["stav"]);} if (($_POST["cena"])>0) {$x=($_POST["cena"]);} if (($_POST["kraj"])>0) {$x=($_POST["kraj"]);} a tkhle ten option: <br><br> <p style="position:absolute;top:165;font-weight:bolder;color:red">Vyhledá vání:</p> <form action="index.php?page=allform" method="post"> <div style="position:absolute;top:190;left:185"><b>Druh:</b> <SELECT name="druh"> <option value = "%">Nezáleží</option> <option>Osobní</option> <option>Nákladní</option> <option>Užitkové</option> <option>Moto</option> </SELECT> </div> |
||
Lojzik Profil * |
#11 · Zasláno: 6. 4. 2008, 15:13:25
tak nevím cožpa tohle nikdo nikdy neřešil???
|
||
Lojzik Profil * |
#12 · Zasláno: 6. 4. 2008, 20:01:30
poslušně hlásím problém vyřešen :-)) jinak kdyby někdo něco podobnýho řešil tak s % to nemá pranic společného nic proti tobě Harwen, jinak všem zúčastněným díky za pomoc
|
||
Časová prodleva: 16 let
|
0