Autor | Zpráva | ||
---|---|---|---|
Adrifinel Profil * |
#1 · Zasláno: 25. 7. 2011, 16:43:27
$spojeni1 = $connect; if (!$spojeni1): echo "Nepodařilo se připojit k MySQL.<BR>\n"; break; endif; MySQL_Select_DB("$db"); $vysl1 = MySQL_Query("SELECT * FROM `users` WHERE jmeno LIKE '$pridal'"); $zaznaml = MySQL_Fetch_Array($vysl1); // admin commiting if ($leveln > 7 || $level == "hybrid-A"): echo "<form><fieldset><legend>Newsky zaslané návštěvníky čekající na potvrzení</legend>"; @$vysledekrep = MySQL_Query("SELECT * FROM diginews WHERE zobrazit LIKE '0' ORDER BY ID DESC"); if (MySQL_Num_Rows($vysledekrep) != 0): echo "<table class=nohover style='width: 98%'> <thead><tr><th>#ID</th><th>Nadpis</th><th>Zaslal</th><th>Datum</th><th>Volby</th></tr></thead>"; while ($zaznam = MySQL_Fetch_Array($vysledekrep)) { echo "<tr><td>".$zaznam['ID']."</td><td><a href=viewdiginews.php?ID=".$zaznam['ID'].">".$zaznam['$nadpis']."</a></td><td><a href='userprofile.php?info=".$zaznam['pridal']."'>".$zaznam['pridal']."</a></td><td>".$zaznam['datum']."</td><td><a href=php/commitdiginews.php?ID=".$zaznam['ID']."&commit=ano>Potvrdit</a><br><a href=php/commitdiginews.php?ID=".$zaznam['ID']."&commit=ne>Zamítnout</a></td></tr>"; } echo "</table>"; else: echo "Nejsou žádné newsky čekající na potvrzení."; endif; echo "</table></fieldset></form><br>"; endif; Mám dvě tabulky, jednu uživatelskou a jednu pro novinky, no a podle tady toho: $vysl1 = MySQL_Query("SELECT * FROM `users` WHERE jmeno LIKE '$pridal'"); by mi to mělo rozpoznávat, že hodnota jmeno je rovna hodnotě pridal. (teda pokud tomu dobře rozumím). Zkusila jsem test echem a ten mi vypisuje jenom hodnotu pridal, nikoliv jméno. |
||
Michal Benda Profil |
#2 · Zasláno: 25. 7. 2011, 17:42:40 · Upravil/a: Michal Benda
Adrifinel:
„by mi to mělo rozpoznávat, že hodnota jmeno je rovna hodnotě pridal. (teda pokud tomu dobře rozumím). Zkusila jsem test echem a ten mi vypisuje jenom hodnotu pridal, nikoliv jméno.“ Moc nechápu na co se ptáš. Tento dotaz ... SELECT * FROM `users` WHERE jmeno LIKE '$pridal' znamená (přeloženo do češtiny): "Vyber mi všechny sloupce uživatele jehož jméno je stejné jako hodnota proměnné pridal." Takže by to mělo vrátit jeden výsledek (pokud je tabulka správně navržena) a toho konkrétního uživatele. Navíc v tvé ukázce kódu po provedení tohoto dotazu s výsledkem dále nepracuješ. Uživatele, který napsal tu tzv. newsku získáváš až z té druhé tabulky. <a href='userprofile.php?info=".$zaznam['pridal']."'> |
||
jenikkozak Profil |
#3 · Zasláno: 25. 7. 2011, 18:05:01
Adrifinel:
Trochu mimo téma: „$vysl1 = MySQL_Query("SELECT * FROM `users` WHERE jmeno LIKE '$pridal'");“ Příkaz LIKE nedokáže využít indexů tabulky, proto bude vyhledávání náročnější. Bylo by proto v tomto případě lepší nahradit ho znakem „rovná se“. Místo jména uživatele by bylo lepší ukládání jeho id. |
||
Časová prodleva: 13 let
|
0