Autor Zpráva
Pavliq
Profil
Ahoj, chtěl bych se zeptat, jak pomocí formuláře lehce změnit jméno, které je uloženo v databázi.
Databáze - tabulka name - řádek jmeno. Určitě chápete co mám na mysli. Na internetu jsem našel pár ukázek, ale všechny byli okomentovány textem : stejně je to nefunkční, s chybami a zbytečně složité.
Pokud tedy máte chuť pomoc, pokud víte, budu moc rád. Jinak všechno nej do roku 2008! S pozdravem Pavel Jílek
Mastodont
Profil
Uděláš si obyčejný formulář HTML s políčkem pro jméno, to zapíšeš, metodou POST odešleš a po příjmu na serveru spustíš příkaz UPDATE tabulka SET sloupecjména = nováhodnota.

Příklad je na http://www.linuxsoft.cz/article.php?id_article=361
Pavliq
Profil
<?
include "config.php";

if (isset($_POST[zmenit])){
if (MySQL_Query("UPDATE jmena SET jmeno=$_POST[novejmeno]")) {
$zprava = "Změna ok :)";
}
else{
$zprava = "Error";
}
}

?>


<form method="post" action="" >
Nové jméno: <input type="text" name="novejmeno"><br />
<input type="submit" name="zmenit" value="změnit" >
</form>


Mno a nejde :-/

kde je chyba ?
Michalek
Profil
Zkusil bych to trošku s uvozovkama.

if (isset($_POST["zmenit"])){
 if (MySQL_Query("UPDATE jmena SET jmeno='".$_POST["novejmeno"]."'")) {
  $zprava = "Změna ok :)";
 }
 else{
  $zprava = "Error";
 }
}


A doporučuju prozkoumat takový maličkosti jako ošetření vstupu do databáze, třeba něco na způsob
 if (MySQL_Query("UPDATE jmena SET jmeno='".mysql_real_escape_string($_POST["novejmeno"])."'")) {


Jo a pak koukám na takový maličkosti jako WHERE a tak, ale to už je na tobě :)
Alphard
Profil
Mno a nejde :-/
kde je chyba ?


to se ptáš nás? tady není věštírna
popiš, jak se chyba projevuje, vypisuje php nějakou chybu?
a za mysql_query() dej echo mysql_error();
PaVLIQ
Profil *
ahoj, během dneška vyzkouším a dám Vám vědět... zatím dík
Pavliq
Profil
Tak otestováno a furt nic :( Jinak co mi to píše za chybu ? error =o)

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