Autor Zpráva
lopik93
Profil *
Dobrý večer,
rád bych se zeptal, jakým způsobem lze efektivně vyřešit uložení rozepsaného textu do databáze pod určitým ID. Konrétně mám na mysli, abych článek mohl během psaní uložit a zároveň s ním mohl posléze pracovat ( Upload obrázku a přiřazení obrázku k ID textu/článku).

Napadl mne způsob tak, že se z databáze vytáhne ID posledního uloženého článku ( podle data ) a k tomu se posléze přičte +1. Bohužel jsem zde narazil na problém že né vždy se mi vrátilo ID poslední ale občas ( co cca 3 - 5 uložení ) mi databáze vyplivla ID jiné než aktuální. Zasílám kód pro lepší objasnení mé situace.

if(isset($_POST["rozepsany"])) {

$id=$_POST['id'];
            $nazev=$_POST['nazev'];
            $elm1=$_POST['elm1'];
             $datum=$_POST['datum'];
             $aktivni=1;
            if(empty($elm1) or empty($nazev)){
             echo "Nevyplnili jste název nebo obsah. ";}
             else{        
       $sql="INSERT INTO  clanky (id, nazev, obsah, date, aktivni) VALUES ('$id', '$nazev', '$elm1', '$datum', '$aktivni',)";
     $vysledky = mysql_query( $sql )
  or die( mysql_error() );}}

  $sql="SELECT id FROM clanky order by date DESC LIMIT 1";                                  // výpis posledního id dle času 
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);

$new_id = $rows[id]+1;
echo "
<form name='formular' method='post' action='pridej_clanek.php'>

Titulek<input name='nazev' type='text' id='nazev' size='25' value=''>
Text<textarea name='elm1' type='text' id='elm1' rows='25' cols='80' width='500'></textarea>

Datum<input name='datum' type='text' id='datum' size='25' value='".date('Y-m-d')."'>
<input type='text' name='id' value='$new_id' />                                                                         // zobrazeno pro kontrolu


<input type='submit' name='rozepsany' value='ULOŽIT JAKO ROZEPSANÝ ČLÁNEK'>
Sir Tom
Profil
lopik93:
Také dobrý večer,

tak to ID netahej z databáze, ale už si jej do SESSION a tam jej v průběhu psaní článku už neměň.
lopik93
Profil *
Děkuji za odpověď. Prvnotně je třeba toto ID vytáhnout z DB, poté mne napadlo uložit ho do session a dále pracovat se session. Děkuji za tipy.

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