Autor Zpráva
Martin011
Profil *
Mám klasický INSERT příkaz:
$add=mysql_query("INSERT INTO `rubrics` ( `id-rubric` , `name-rubric` , `title-rubric` , `higher-rubric` , `keywords-rubric` , `description-rubric` , `articles-rubric` )
VALUES (
NULL , '".getSeo($_POST['rubtitle'])."', '".$_POST['rubtitle']." ', '".$_POST['rubhigher']."', '".$_POST['rubkey']."', '".$_POST['rubdes']."', '0'
);");

ale vždy se to uloží pětkrát. Jednou správné údaje (odeslané přes POST) a poté ještě 4 prázdné řádky.

Napadá vás, proč se to děje?

Děkuji moc.
Tomasds
Profil
chybu máš někde jinde, ten příkaz to samozřejmě udělá jen jednou.
kromě toho .. vkládat id-rubric = NULL a articles-rubric = 0 je zbytečné, ale to jen opravdu na okraj.
Martin011
Profil *
A kde by tedy ta chyba mohla být? Alespoň teoreticky, nic mě nenapadá a v žádném cyklu to nemám... Mohla by bát např. špatně nastavená mysql tabulka?
OnZ
Profil
Spíš špatné hodnoty proměnný občas se mi to také stávalo překontrolul co ukládáš
Martin011
Profil *
Jak to myslíš špatné hodnoty?
Andre
Profil
Jestli je tohle celý tvůj script tak nevidím problém, ale jestli ne může se stát že ti zbytek scriptu z nějakého důvodu provede INSERT 5 krát.
ninja
Profil
Martin011: nech si vypsat kazdy dotaz do databaze, urcite je chyba v aplikaci, kde se neco opakovane vykonava.
Martin011
Profil *
ninja
A to mohu udělat jak?
Děkuji za rady.
phpX
Profil
Martin011
například tak, že si vytvoříš tabulku `dotazy`s jedním sloupcem a funkci, třeba sql_query:

function sql_query ($query) {

    mysql_query ('INSERT INTO dotazy VALUES ("'.mysql_escape_string($query).'")');

    return mysql_query ($query);

}


a potom ve skriptu uprav všechny mysql_query na sql_query

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: