Autor Zpráva
kozusnik.jan
Profil *
Dobrý den,
mám problém s úpravou zápisu v DB. V pořádku se mi zobrazí seznam, odkud vyberu soubor, v pořádku se mi pak zobrazí formulář, ale záznamy se pak v databázi neupraví.
tady je soubor:
<h1>Úprava článku</h1>
<?php
$zobraz_formular=true;
$zobraz_clanek=false;
if(!isset($_POST['id_clanku'])){
$zobraz_formular=false;
$sql = "SELECT id, nazev from clanky";
$res = mysql_query($sql) or die("Chyba. Nelze provést akci! Prosím kontaktujte administrátora");
echo"<form method='post' action=''>";
echo"<select name='id_clanku'>";
while ($zaznam = mysql_fetch_array($res)) {    
echo"<option value='".$zaznam['id']."'>".$zaznam['nazev'];
    }
echo"<input type='submit' value='Vyber'>";    
echo"</select>";
echo"</form>";
}


 
if (isset($_POST['upravit'])) {
    if (trim($_POST['nazev']) == "") {
        $errors[] = "Název je povinný údaj";
    }
    if (trim($_POST['obsah']) == "") {
        $errors[] = "Text je povinný údaj";
    }
    if (!isset ($errors)) {
        $zobraz_clanek=true;
        $zobraz_formular=false;
        $timezone = new DateTimeZone("Europe/Prague");
        $date = new DateTime();
        $date->setTimezone($timezone);
        $datum = $date->format('d.m.Y  H:i');
        $nazev = mysql_real_escape_string($_POST['nazev']);
        $obsah = mysql_real_escape_string($_POST['obsah']); 
        $ide = $_POST['ide'];
        $sqluprava = "UPDATE  'clanky' SET  'nazev' =  '$nazev',
'obsah' =  '$obsah', 'datum' = '$datum' WHERE  'id' ='$ide'";
$resuprava = mysql_query($sqluprava);
        //$sql = "UPDATE 'clanky' SET  'nazev' =  '$nazev','obsah' =  '$obsah', 'datum' = '$datum' WHERE  'clanky'.'id' ='$ide'";
       // $res = mysql_query($sql);
    } else {
    
        foreach ($errors as $error){
            echo $error."<br />";
        }
    }
}
if(isset($_POST['id_clanku'])) {
$zobraz_formular=true;        
$id = $_POST['id_clanku'];
$sql2 = "SELECT nazev, obsah from clanky WHERE id = $id";
$res2 = mysql_query($sql2) or die("Vámi zvolený článek pravděpodobně neexistuje!");
while ($zaznam2 = mysql_fetch_array($res2)) {    
$nazev2 = $zaznam2['nazev'];
$obsah2 = $zaznam2['obsah'];
}
}
if($zobraz_formular==true) {include("uprava_formular.php");}
if($zobraz_clanek==true) {include("clanek_inc.php"); }
    
?>
tady je ještě uprava_formular.php
<form method="post" name="tvorba" action="">
    <table>
        <tr><td>Nazev</td></tr>
        <tr><td><input type="text" name="nazev" class="nazev" value="<?php echo $nazev2; ?>">
                <input type="hidden" name="ide" value="<?php echo $_POST['id_clanku']; ?>" /></td></tr>
        <tr><td>Text</td></tr>
        <tr><td>     
<a href="javascript:insertAtCursor(obsah2, '<b>', '</b>');">  <b>B</b>  </a>
<a href="javascript:insertAtCursor(obsah2, '<i>', '</i>');">  <i>I</i>  </a>
<a href="javascript:insertAtCursor(obsah2, '<u>', '</u>');"> <u>U</u>  </a>
<a href="javascript:insertAtCursor(obsah2,'<a href=\'example.com\'>text odkazu</a>','')">  Odkaz</a>
<a href="javascript:insertAtCursor(obsah2,'<img src=\'example.com/image.jpg\' target=\'_blank\' />','')">Obrázek</a>
        </td></tr>
        <tr><td><textarea name="obsah" id="obsah"><?php echo $obsah2; ?></textarea></td></tr>
        <tr><td><input type="submit" name="upravit" value="Upravit clanek"></td></tr>
    </table>
</form>

Já vím, že je toho hodně a nevím, kde by mohla být chyba, proto to radši posílám celé.
Someone
Profil
Nezkoukl jsem vše, ale může to být v tomto:
$sqluprava = "UPDATE    clanky  SET   nazev  =  '$nazev',  obsah  =  '$obsah',  datum  = '$datum' WHERE   id  ='$ide'";
Přepiš si to viz výše.
kozusnik.jan
Profil *
Přesně!!!! moc díky :)

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: