Autor Zpráva
panmagor
Profil *
Opět nemám svůj den.... Na jedné stránce řeším vytažení ID takto:

Header('Location:write.php?id='.$id);


Po přesměrování na write,php to tedy vypadá nějak takhle: write.php?id=5

Já ale na té stránce write.php mám zase formulář, kterým potřebuji předat i to id=5 do stránky write_overeni.php. Zkoušel jsem to řešit tak, že jsem nadefinoval "input type hidden" a do "value napsal $id2"

s tím, že jsem nadefinoval, že $id2 je
$id_2 = $_POST['id'];


Jenže ono se to po odeslání nepředá... :-(
temistokles
Profil
V prípade, že sa na ďalšiu stránku dostaneš cez POST (odoslaním formulára touto metódou), malo by to fungovať, skús poslať kus kódu.

Ak sa tam dostaneš odkazom, musíš si hodnotu vložiť do adresy (alebo Cookie?!).
panmagor
Profil *
overeni.php-
do {
  $uzivatel = trim($_POST['user']);
  $heslo = trim($_POST['pass']);
  $result = mysql_query("SELECT user_id FROM users WHERE uzivatel='$uzivatel'");
  $row = mysql_fetch_row($result);
  $id = $row[0];
  
  if ( !strlen($uzivatel) || !$heslo ) { $chyba = 1; break; }
  
  $sql = 'SELECT 1 FROM users WHERE uzivatel="'.$uzivatel.'" AND heslo="'.$heslo.'"';
  if ( !$sql ){ $chyba = 1000; break; }
  @$v = mysql_query($sql);
  if ( !mysql_num_rows($v) ) { $chyba = 100; break; }
  
  $_SESSION['user_type'] = 'admin';


} while ( false );


if ( $chyba ) { 
  Header('Location:login.php?logged='.$chyba);
}
else {
  Header('Location:write.php?id='.$id);
}


write.php-
<?php $id_2 = $_POST[$id]; ?>
<form action="write_overeni.php" method="get">
  <input type="text" name="nadpis" class="nadp">
    <br /><br />
  <textarea type="text" name="text" class="text"></textarea>
  <br /><br />
<input type="submit" name="OK" value="Odeslat">
   <input type="reset" name="reset" value="Smazat">
  <input type="hidden" name="id_2" value='<?php echo $id_2; ?>'>
  
</form>

write_overeni.php-

$nadpis = $_POST['nadpis'];
$text = $_POST['text'];
$zverejnit = $_POST['zverejnit'];
$user_id = $_POST[$id];

$prikaz = mysql_query("INSERT INTO denicky_zaznamy (denicek_id,user_id,denicek_nadpis,denicek_text) VALUES ('$denicek_id','$user_id','$nadpis','$text')");
if (mysql_error()) {
echo "průůůšvih &nbsp;" . mysql_error();
} else {
echo "Uloženo";
}
Joker
Profil
panmagor
Header('Location:write.php?id='.$id);
Tak v tomhle případě to id na další stránce nebude $_POST["id"], ale $_GET["id"]

Vždycky záleží na tom, jakou metodou se data z té předchozí stránky odešlou.

Nicméně předávat data mezi několika stránkami je lepší třeba přes session. I když tři lineární stránky (něco jako: kliknu na smazat -> předá se ID pro potvrzovací stránku -> předá se ID pro mazací skript), to ještě jde.

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: