Autor Zpráva
Hitny 14
Profil *
Dobrý den mám napsanej kód v php na aktualizaci pořad stejných dat v jedná databázi prostě aby se data pořád přepisovala. Nějak mi to ale nejde a nevím si s tím rady kód je:
$text = ($_POST['content']);
$id = '1';
$text=str_replace("\n","<br>",$text);
$vloz ="UPDATE FROM tabulka_acko WHERE id='".$id."', text='".$text."';";
$result=mysql_query($vloz);

Byl bych vám vděčný za každou radu.
juriad
Profil
Když pominu, že se napřed musíš k databázi připojit mysq_connect
Tak máš úplně špatně syntaxi UPDATE, správně má být něco jako:
UPDATE tabulka SET text = "novy text" WHERE id = 1
Na konec sql příkazu středník nemusíš dávat, mysql_query stejně neumožňuje spustit víc dotazů najednou.


Mimochodem, není úplně vhodné mít sloupec nazvaný text, protože je to rezervované slovo, byť si s tím mysql poradí a má to uvedené ve výjimkách.
http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html na konci článku.
Hitny 14
Profil *
Připojení k databázi mám pomocí include. Ale když chci aby se mi do textu ukládali data z formuláře tak tam musím mít $text která je vytvořena $text = $_POST ['text'] ne?
Alphard
Profil
Nevím, jestli vám rozumím, ale název sloupce a proměnné se rozhodně shodovat nemusí. juriad vám napsal kód
mysql_query("UPDATE tabulka_acko set text = '".mysql_real_escape_string($_POST['content'])."'  WHERE id= ".(int) $id);
Při výpisu použít nl2br().

Navíc, jak praví manuál, mysql_query() nepoužívat, bude zrušena.
Hitny 14
Profil *
Ce se mám místo mysql_query() používat?
Alphard
Profil
Hitny 14 [#5]:
Další osoba, která asi neumí klikat na odkazy nebo anglicky :-) to je při programování užitečná vlastnost.
Je doporučeno buď mysqli nebo PDO, viz ten manuál, nebo se podívejte na dibiphp.com/cs/quick-start. Verze, která to zruší nevyjde minimálně rok myslím (ono to určitě bude mnohem dýl), pak se bude nějakou dobu dostávat na hostingy, ale nic velkého už bych na mysql extenzi nebudoval
juriad
Profil
Pokud už máš rozjetý projekt, tak zůstaň při mysql_* funkcích, ale počítej do budoucnosti s problémy (a možným nutným předěláváním projektu). Pokud máš možnost změnit přístup k databázi TEĎ použij mysqli_* (víceméně jde o to, že každá funkce musí dostat jako parametr spojení (to co vrátí mysqli_connect
Pokud nehodluješ OOP (nebo ti ta zkratka nic neříká), tak chceš používat procedurální styl z manuálů.

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: