Autor Zpráva
dako
Profil
Ahojte, chcel by som vedieť váš názor na kod, keďže nemôžem nájst kde je problém, prípadne čo robím zle, lebo som sa v tom už totálne zamotal a sám neviem čo som prerobil na dobré a čo na zlé :)

tu je časť z kodu:
fomular
<p>
<form name="edit_text" action="" method="post">

Názov článku:
<br />
<textarea name="nazovek" cols="40" rows="1">
<?php echo($_POST['nazov']); ?>
</textarea>



</p>

<p>

<textarea name="textik" cols="40" rows="3">
<?php echo($_POST['text']); ?>
</textarea>
<input type="hidden" value="<?php $_POST['textid'] ?>" name="textid" />

<input type="submit" value="Uložiť" name="action" />
</form>
</p>

vynatok z podmienky, kde po odoslaní formulára volá funkciu

        if( strcasecmp($_POST['action'], "Uložiť")==0 && !empty( $_POST['textik'] ) )
        {
            edit_text($_POST['textid'], $_POST['nazovek'], $_POST['textik']);
        }

a samotná funkcia
function edit_text( $textid, $nazovek, $textik )
{
mysql_query( "UPDATE novinky SET nazov='".addslashes( $nazovek )."', text='".addslashes( $textik )."' WHERE id='".addslashes( $textid )."'"  );
}

V čom robím chybu? alebo prečo to nechce ísť? teda nič mi neprepíše v databáze. Vďaka
quatzael
Profil
dako:
Zkontroluj jestli se Ti spouští ta samotná funkce edit_text..


Na tom řádku 19 bys asi každopádně měl mít:
<input type="hidden" value="<?php echo $_POST['textid']; ?>" name="textid" />
Jan Tvrdík
Profil
Ideálně bez XSS zranitelnosti (to se týká všech těch inputů):
<input type="hidden" value="<?php echo htmlspecialchars($_POST['textid']); ?>" name="textid" />
Enko
Profil *
A taky nahradit addslashes() za mysql_real_escape_string() nebo ještě lépe udělat to přes PDO.

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: