Autor Zpráva
czechiaa
Profil
Dobrý den,
vytvářím si vlastní administraci svých webovek, ale nyní se potýkám s problémem, který nemohu vyřešit. Pro mnohé bude banální, ale rád bych věděl, kde je chyba, protože ji nemohu najít.

$qry['move'] = mysql_query("INSERT INTO delnovinky (id,kategorie,nadpis,text,autor,datum,cas,editace_datum,editace_cas,editoval,hit) VALUES ($id,$kategorie,$nadpis,$text,$autor,$datum,$cas,$editace_datum,$editace_cas,$editoval,$hit) FROM novinky WHERE id=".mysql_real_escape_string($_GET['del_dotaz_id'])." LIMIT 1");
$qry['delete'] = mysql_query("DELETE FROM novinky WHERE id='".mysql_real_escape_string($_GET['del_dotaz_id'])."' LIMIT 1");

V kódu mám tyhle dva řádky pod sebou, pracují zároveň. Jedná se o to, že mám novinky, ale chci mít možnost, je "jednoduše smazat", ale smazat je chci pouze z tabulky, z kama se načítají, ale také chci, aby se přesunuly do druhé tabulky, aby se uchovaly, jenže při vykonání se data neuloží do druhé tabulky, ale smazání funguje, tak prosím, kde je chyba?

Za každou reakci budu rád. Děkuji
Tori
Profil
Špatná syntax. viz http://dev.mysql.com/doc/refman/5.1/en/insert-select.html
Mis@
Profil *
Možná:
id='".mysql_real_escape_string($_GET['del_dotaz_id'])."'
czechiaa
Profil
Mis@:
Nene, dle mého názoru, toto mám dobře ;-)
Tori:
Takže to mám jen blbě sestavené? Popostrčení by bylo, ale sestavení z toho, jak jsem četl z linku, je skoro stejné, jen přidáno SELECT, které mi tam přijde zbytečné.
Prostě ať to upravuju jakkoliv; nedokážu to sestavit, na ten $qry['move'] :(
Tori
Profil
czechiaa:
Co je ve všech těch proměnných - názvy sloupců??
Pokud je ve sloupci id číslo, tak ho neescapujte jako řetězec, ale přetypujte na číslo. intval($_GET['id'])
czechiaa
Profil
Jj, přetypuju ho, to díky za radu.
Mám dvě tabulky (novinky & delnovinky).
V novinkách mám normálně články, které se mi vypisují a jsou tam různé sloupce (id, kategorie,nadpis, text,autor,..atd.) a chci je přenést do tabulky delnovinky. Pochopili jsme se stejně?
Tori
Profil
czechiaa:
Já to tak pochopila, proto se ptám na ty proměnné, které mi tam nesedí. Čekala bych něco takového:
INSERT INTO delnovinky (sloupec1, sloupec2, sloupec3) SELECT sloupec1, sloupec2, sloupec3 FROM novinky WHERE id = 123

Jinak jestli tím řešíte to, aby se některé záznamy nezobrazovaly, ale přitom nesmazaly, tak se to dá udělat i tak, že přidáte sloupeček smazané s hodnotou 1 nebo 0. Záleží kolik těch záznamů/novinek je a jak často se mění. Nebo se to dá i zkombinovat - záznamy jen označovat jako smazané, a jednou za den spouštět skript, který je skutečně přesune do jiné tabulky. Ale to je asi zbytečně komplikované řešení.
czechiaa
Profil
Tori:
Moc děkuju za ten kód, ale v variant s novým sloupečkem a hodnotou 1/0, mě vůbec v této situaci nenpadla a přijde mi i lepší a jednodušší :-)
Nene, nechci je přesouvat automaticky. Jde mi jen o ty, které si sám zvolím. Tímto děkuji za reakce, pomohlo mi to.

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: