SQL Dotaz s víceřádkovým výsledkem

7 příspěvků

Archiv diskusního fóra

Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.

  1. zdravíčko, nejsem na SQL žádnej odborník, spíš začátečník a dávám dohromady něco jako výpis v závislosti na požadovaných údajích a podmínkách. Dokud je výsledek jen jeden řádek vše je bez problémů a tabulka OK, ale jakmile by mělo dojí k výpisu více řádků, tak se mi výsledek opakuje a já nevím, jak jej donutit, aby mi zobrazil další řádek tabulky, který podmínkám odpovídá. Přikládám zdrojový kód a adresu na které stránka běží: http://www.darkgate.mysteria.cz/neco.php Zdroj: <table BORDER="1"> <? require "db.php"; //otevřeme databázi $res = MySQL_Query("SELECT * FROM `accounts` WHERE `admin` LIKE 'on' ORDER BY `login` LIMIT 0 , 30") or die('Nepodařil se přenos dat z databáze. '); $row = MySQL_fetch_array($res); $email = $row['email']; $login = $row['login']; $working = $$row['working']; $admin = $row['admin']; $icq = $row['icq']; $msn = $row['msn']; $name = $row['name']; $skype = $row['skype']; $i=MySQL_num_rows($res); //zjisti pocet radku while ($i > 0): // dokud je $i větší než nula, prováděj následující příkazy { echo '<tr><td>'; echo "$login"; echo '</td><td><A HREF="mailto:'; echo "$email"; echo ';">'; echo "$email"; echo '</A></td><td><A HREF="http://wwp.icq.com/whitepages/message_me/1,,,00.icq?uin='; echo "$icq"; echo '&action=message" TITLE="Zpustí ICQ na vašem PC a odešle rychlou zprávu."><SMALL>'; echo "$icq"; echo '</SMALL></A></td><td><IMG SRC="http://web.icq.com/whitepages/online?icq='; echo "$icq"; echo '&img=5" ALT="ICQ"></td><td>'; echo "$msn"; echo '</td>'; echo '<td ALIGN="center"> '; echo "$skype"; echo ' <BR><a href="skype:'; echo "$skype"; echo '?call" onClick="return skypeCheck();"><IMG style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 114px; BORDER-BOTTOM: medium none; HEIGHT: 22px" height=20 alt="Volat uživatele: '; echo "$skype"; echo ' ( '; echo "$name"; echo ' )" src="http://mystatus.skype.com/smallclassic/'; echo "$skype"; echo '" width=114></a><script type="text/javascript" src="http://download.skype.com/share/skypebuttons/js/skypeCheck.js"></script></td><td>'; echo "$working"; echo '</td></tr>'; $i--; } endwhile; // tento cyklus sestupně vypíše čísla od 1000 do 1 ?> </table> Předem děkuji.
  2. No FUJ! to je ale prasárna! Co řádek to chyba, to se snad ani nedá číst ... :( Použij něco jako: while($q = MySQL_Fetch_Assoc($query)) { var_dump($q); }
  3. co dělá ta funkce: MySQL_Fetch_Assoc()
  4. Začni studiem manuálu: http://us3.php.net/manual/cs/function.mysql-fetch-assoc.php
  5. viz TOM 1 echo '<tr><td>'; echo "$login"; echo '</td><td><A HREF="mailto:'; echo "$email"; 1b echo ' <tr><td>' "$login" </td><td><A HREF="mailto: "$email" '; 2 $email = $row['email']; $login = $row['login']; $working = $$row['working']; $admin = $row['admin']; $icq = $row['icq']; $msn = $row['msn']; $name = $row['name']; $skype = $row['skype']; 2b tak to myslim nema smysl, s polem se pracuje daleko sikovneji. 3 echo '?call" onClick="return skypeCheck();"><IMG style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 114px; BORDER-BOTTOM: medium none; HEIGHT: 22px" height=20 3b stylovani do HTML vubec nedavej, na to je externi CSS (ale neni to chyba, jen kod vypada preplacany a tahas zbytecne navic data, ktera by mohla byt v cache v tom soubor.CSS) 4 $i=MySQL_num_rows($res); //zjisti pocet radku while ($i > 0): // dokud je $i větší než nula, prováděj následující příkazy 4b na cz.php.net najdes, ze pouzivaji 2 mozne scripty: x = numberrow(...) for(i=0;i<x;i++) nebo while ( $row = MySQL_fetch_array($res)): // dokud neni $row=-1, prováděj následující příkazy "co dělá ta funkce: MySQL_Fetch_Assoc()" http://cz.php.net/MySQL_Fetch_Assoc http://cz.php.net/MySQL
  6. Už na tom pracuju a překopal jsem to kompletně
  7. Už je to OK - vysledek je na http://www.darkgate.mysteria.cz/vypis-administratoru.php

← Zpět na všechna témata