Autor Zpráva
Pavliq
Profil
Ahoj,
potřeboval bych z databáze dostat počet znaků "1". Zkouším toto :

<?
$vysledek = MySQL_Query("select count(*) as pocet from cisla where cislo='1'");
while ($row = MySQL_Fetch_Assoc($res)) {
echo "Počet 1: $res[pocet]";
}
?>


Ale nechce mi to fungovat :-/. Děkuji za pomoc.
nightfish
Profil
potřeboval bych z databáze dostat počet znaků "1"
počet znaků "1" nebo počet řádků, ve kterých je v nějakém sloupci uloženo číslo 1, nebo počet řádku, ve kterých je v nějakém sloupci uložen znak "1"?

<?php
  // tady prijde pripojeni k db
  $vysledek = mysql_query("select count(*) as pocet from cisla where cislo = 1"); // pocet radku, kde sloupec `cislo` obsahuje cislo 1
// nebo $vysledek = mysql_query("select count(*) as pocet from cisla where cislo = '1'"); // pocet radku, kde sloupec `cislo` obsahuje znak jedna
// nebo $vysledek = mysql_query("select count(*) as pocet from cisla where cislo like '%1%'"); // pocet radku, kde alespon jeden znak sloupce `cislo` je jednicka
  if ($vysledek) echo mysql_result($vysledek, 0, 0);
  else echo "Pri dotazu doslo k chybe: ".mysql_error();
?>
Joker
Profil
Pavliq
To $res tam nemá co dělat. U zpracování řádku má být $vysledek a ve výpisu $row.
Nicméně vzhledem k tomu, že bude vráceno jen jediné číslo, je tohle poněkud "kanón na vrabce".

Zhruba nástřel (doufám) jednodušší varianty:
$vysledek = mysql_query("SELECT COUNT(cislo) FROM cisla WHERE cislo='1'");
$pocet = $vysledek ? mysql_result($vysledek,0) : false;
if(pocet === false) die("chyba komunikace s db");
djlj
Profil
Pavliq
Vzhledem k tomu, že v každém řádku používáš jiný název proměnné, nemůže to nikdy fungovat. Projdi si základy php třeba na http://linuxsoft.cz/php/ (to, aby sis to pročetl, jsem ti tu už psal; škoda, žes to ještě neudělal).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0