Autor | Zpráva | ||
---|---|---|---|
Demoniak Profil |
#1 · Zasláno: 3. 12. 2007, 18:53:44
Zdravim všchny,
potřeboval bych poradit co mám zde za chybu: <?php require_once "db.php"; $query = MySQL_Query("SELECT * FROM `members` ORDER BY jmeno") or die (mysql_error()); echo "<table>"; echo " <tr> <th width='100'>Jméno</th> <th width='100'>Povolání</th> <th width='100'>ICQ</th> </tr> "; $Pocet=0; while($Vysledek = mysql_fetch_array($query)){ $Pocet++; if (($_GET['prava'] == 2 or 1 or 3)){ echo "<tr> <td width='100'><center>".$Vysledek['jmeno']."</center></td> <td width='100'><center>".$Vysledek['class']."</center></td> <td width='100'><center><img src='http://wwp.icq.com/scripts/online.dll?icq=".$Vysledek['icq']."&im g=24' alt=".$Vysledek['icq']."'></center></td> </tr> "; } echo "</table>"; ?> když tam neni podmínka tak script proběhne, já bych ale potřeboval aby to nějak přefiltroval prodle práv registrovaných uživatelů. to znamená aby vypysoval pouze uživatele s právama 1,2 a 3. aby si uživatelů s právama 0 vubec nevsimal. Moc prosím o pomoc a předem díky. |
||
tiso Profil |
#2 · Zasláno: 3. 12. 2007, 20:05:38
1. predávať práva ako prameter v url je blbosť, ktokoľvek si ho môže zmeniť na aký chce
2. nikde netestuješ či je táto premenná vôbec nastavená 3. if ($_GET['prava'] != 0){ alebo: 4. if (in_array($_GET['prava'], array(1, 2, 3)){ 3+4: zohľadni body 1+2 |
||
Demoniak Profil |
#3 · Zasláno: 3. 12. 2007, 20:51:43 · Upravil/a: Demoniak
Díky moc si mi pomoh.
BTW ty prava nikdo menit nemuze... sou v zaheslovany DB a dostanou se tam jedine pres MySQL Administraci. Proměnná "prava" je v DB nastavena automaticky jako "0" a to $_GET tam být nemělo. za to se stydim že sem to tam vůbec dal. ještě jednou díky moc. |
||
Demoniak Profil |
#4 · Zasláno: 3. 12. 2007, 21:37:15
Tak už jsem narazil na 1. chybu...
<?php require_once "db.php"; $query = MySQL_Query("SELECT * FROM `members` ORDER BY prava DESC") or die (mysql_error()); echo "<table>"; echo " <tr> <th width='100'>Jméno</th> <th width='100'>Povolání</th> <th width='100'>ICQ</th> <th width='100'></th> </tr> "; $Pocet=0; while($Vysledek = mysql_fetch_array($query)){ $Pocet++; if (in_array($Vysledek['prava'], array(1, 2, 3, 4))){ echo "<tr> <td width='100'><center>".$Vysledek['jmeno']."</center></td> <td width='100'><center>".$Vysledek['class']."</center></td> <td width='100'><center><img src='http://wwp.icq.com/scripts/online.dll?icq=".$Vysledek['icq']."&im g=24' alt=".$Vysledek['icq']."'></center></td> "; if ($Vysledek['prava'] ==4){ echo "<td width='100'><center><font color='#99ff33' size='2'>Webmaster, Zástupce CL</font></center></td>";} elseif ($Vysledek['prava'] ==3){ echo "<td width='100'><center><font color='#99ff33' size='2'>Clan leader</font></center></td>";} elseif ($Vysledek['prava'] ==2){ echo "<td width='100'><center><font color='#99ff33' size='2'>Zástupce CL</font></center></td>";} echo "</tr> "; }} echo "</table>"; ?> Takto to mám, když je v DB 1 řádek s údajema, je to 100% funkční ale jakmile zaregistruju někoho nového, udělim mu práva tak aby se měl zobrazit tak to udělá toto: http://gateofheroes.ic.cz/index.php?page=members. Nevím jestli se to s něcím bije co je taky na stránkách a nebo jestli je narušeno opakování scriptu... Prosím o snad poslední radu. mnohokrát díky. |
||
tiso Profil |
#5 · Zasláno: 3. 12. 2007, 21:58:36
Nesedí ti počet buniek v tabuľke, skladáš to všeliako...
|
||
Demoniak Profil |
#6 · Zasláno: 3. 12. 2007, 22:10:52
diky ti.... bez tebe bych nato nepřišel.. už to jde :)
sorry za to jak to vypada teprve se PHP učim měsíc tak to tak taky dopadá. :) |
||
tiso Profil |
#7 · Zasláno: 3. 12. 2007, 22:23:05
V poho, aj nabudúce... Ale s mierou...
|
||
Časová prodleva: 18 let
|
0