Autor Zpráva
Adrifinel
Profil
Snažila jsem se hledat různě tady po foru a ani google nepomohl..

Co vlastně ta chyba:
Chyba při příjmu dat z databáze dd three
znamená?

Píše mi to script, když se pokouším editovat příspěvek...
Someone
Profil
Spíše bych se věnoval tomu kódu, který tuto chybu vyvolává.
Adrifinel
Profil
Someone:
No já se chtěla nejdříve zeptat, jestli o té chybě někdo neslyšel...
Pak jsem asi uvědomila, že asi bude problém v tom, že nemám propojené dva kódy. Tenkrát mi je jeden týpek předělával, už se neozval a nejsem si ani jistá, jestli ten druhý vůbec opravoval...

			$textik = "SELECT * FROM users WHERE jmeno = '$user'";
			$dotazek = MySQL_Query($textik, $connect);
			if (!$connect) die('Chyba při posílání požadavku do databáze');
			$vecicky = MySQL_Fetch_Array($dotazek);
			if (!$vecicky) die('Chyba při příjmu dat z databáze dd three');
			$ikonka = $vecicky['ikonka'];


A kámoška, co původní kód psala, také dneska neví, co tím dd three myslela...
Someone
Profil
S databází teprv začínám, ale napsal bych to asi nějak takto:
$sql = mysql_query("SELECT * FROM users WHERE jmeno='".$user."'");
$vysledek = mysql_fetch_assoc($sql);
$ikonka = $vyskedek['ikonka'];
jenikkozak
Profil
Someone:
Ovšem fungovat ti to nebude.
Jediné, čeho jsi dosáhl, bylo odstranění podivných názvů proměnných jako textik a vecicky.

Adrifinel:
Problém máš ve struktuře databáze. Buď neexistuje tabulka nebo sloupec jmeno v ní.
Místo toho, co máš nyní na 5. řádku, napiš echo mysql_error();, to ti vypíše, v čem se stala chyba. Tuto hlášku si přelož, oprav si chybu a pak tento pátý řádek opět odstraň.
Tori
Profil
Adrifinel:
Vzhledem k tomu, že ta vypsaná chyba reaguje na výsledek z mysql_fetch_array (a ne mysql_query), tak si myslím, že SQL dotaz i databáze jsou v pořádku, jen prostě neexistuje uživatel toho jména. (Pokud dotaz nenajde žádné odpovídající řádky, ale jinak je správně, tak funkce mysql_fetch_* vracejí false. Kdyby byla chyba už v dotazu/DB, tak skript skončí o dva řádky výš.)
(možná ta chybová hláška byla určená jen na zmatení útočníka, který zkouší trefit něčí login)

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