Autor | Zpráva | ||
---|---|---|---|
walkerman Profil |
#1 · Zasláno: 9. 6. 2013, 19:49:00
Dobrý den, chtěl bych se zeptat jakou funkcí vypíšu všechny uživatelé aby mi vyšel počet všech dohromady, např. mám účty: účet1,účet2,účet3 a potřebuji aby se vypsalo počet uživatelů dohromady: 3 zkoušel jsem
<?php include"./config.php"; $vypis=mysql_query("SELECT*FROM `uzivatele`"); while($zaznam = MYSQL_Fetch_Array ($vypis)) {echo $zaznam["nick"]."<br />"; } ?> Ale to mi vypíše pouze jména všechn uživatelů. Předem děkuji všem co se na to aspoň podívají |
||
Fisir Profil |
Reaguji na walkermana [#1]:
Uprav si SQL příkaz na: SELECT * FROM uzivatele LIMIT 3; mysql_num_rows(); . Ten SQL vypíše první tři jména, ne počet uživatelů.
|
||
walkerman Profil |
#3 · Zasláno: 9. 6. 2013, 19:54:27
Napsalo mi to chybu
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.3\www\moje\hlavni.php on line 22
|
||
Someone Profil |
#4 · Zasláno: 9. 6. 2013, 19:56:06
Buďto v PHP:
echo mysql_num_rows($vypis); SELECT COUNT(*) AS pocet FROM uzivatele <?php $result = mysql_fetch_assoc($vypis) echo "Počet je:" . $result['pocet']; ?> |
||
walkerman Profil |
#5 · Zasláno: 9. 6. 2013, 19:56:56
Už jsem to pochopil, upravil jsem SQL ale pořád to vypíše jen jména
|
||
Fisir Profil |
#6 · Zasláno: 9. 6. 2013, 19:58:30
|
||
walkerman Profil |
#7 · Zasláno: 9. 6. 2013, 20:00:33
Someone:
Pozměnil jsem to ale mám teď jiný problém vypíše mi to správně číslo ale napíše to přesně tolikrát kolik je uživatelů takže mi to teď píše 55555 <?php include"./config.php"; $vypis=mysql_query("SELECT*FROM `uzivatele`"); while($zaznam = MYSQL_Fetch_Array ($vypis)) {echo mysql_num_rows($vypis); } ?> |
||
Fisir Profil |
#8 · Zasláno: 9. 6. 2013, 20:03:30
Reaguji na walkermana [#7]:
Tak to nedávej do cyklu. <?php include("./config.php"); $vypis = mysql_query("SELECT * FROM uzivatele"); echo("Počet uživatelů: ".mysql_num_rows($vypis)); ?> |
||
pcmanik Profil |
walkerman:
A prečo si funkčné riešenie zmenil na zlé? $sql = mysql_query("SELECT COUNT(*) FROM uzivatele"); echo mysql_result($sql, 0); Fisirove riešenie nepoužívaj, zbytočne musíš vybrať všetky riadky a následne ich spočítať. Takto máš rovno počet. Naviac rozhranie mysql je zastarané a v budúcnosti bude zmazané. Treba používať mysqli, alebo PDO. To ale myslím tebe bude jedno. |
||
walkerman Profil |
#10 · Zasláno: 9. 6. 2013, 20:05:48
Fisir:
Vyřešeno mockrát děkuji :) |
||
Someone Profil |
#11 · Zasláno: 9. 6. 2013, 20:07:41
pcmanik:
„Fisirove riešenie nepoužívaj, zbytočne musíš vybrať všetky riadky“ Pokud by tu hodnotu chtěl použít ve výpisu uživatelů, nebo vypisovat na základě počtu řádků, tak se víc hodí mysql_num_rows();
|
||
Fisir Profil |
#12 · Zasláno: 9. 6. 2013, 20:08:07
Reaguji na pcmanika [#9]:
„Fisirove riešenie nepoužívaj, zbytočne musíš vybrať všetky riadky a následne ich spočítať. Takto máš rovno počet.“ Ano, to souhlasím. Ale podle technické úrovně tazatele (tím se ale nechci nad ostatní povyšovat a jeho shazovat, každý někdy začínal) bych řekl, že tam moc uživatelů mít nebude a zpomalení nebude vůbec patrné. „Naviac rozhranie mysql je zastarané a v budúcnosti bude zmazané. Treba používať mysqli, alebo PDO.“ Ano. Já jsem mu to psal v originálním stylu ale sám používám mysqli .
|
||
pcmanik Profil |
#13 · Zasláno: 9. 6. 2013, 20:15:39
Fisir, Someone:
Podľa otázky chcel vedieť len počet a preto som navrhol najlepšie riešenie, nechcel som tu zbytočne vyvolať flame :) A tá poznámka na modernejšie rozhranie nebola na teba Fisir :) |
||
Časová prodleva: 11 let
|
0