Gå til innhold

[LØST]Ta vare på ID ved redirect til side


Anbefalte innlegg

Hvordan kan man ta vare på feks en artikkel ID ved redirect til en annen side?

 

Side 1 med skjema (opprettNyhet.php)

 

$sql = "INSERT INTO nyheter(artikkelID, overskrift, ingress, nyhetstekst) 
VALUES(0, " 
. "'" . $_POST['overskrift'] . "', " 
. "'" . $_POST['ingress'] . "', " 
. "'" . $_POST['nyhetstekst'] . "', " 
. ")";
 
if (@mysql_query($sql)){
 echo "<br /><br />Lagring av nyhet var vellykket.";
 // ?id=ID i linken under illustrerer bare hvordan artikkelID legges på link...
 echo "<meta http-equiv='refresh' content='3;URL=nyhet.php?id=ID' />";
    } 
else {
       echo("<P>Lagring av nyhet feilet.. <br /><br />ERROR: " .
  mysql_error() . "</P>");
}

 return true; 
}

// FORMEN HER

<form action="<?php  echo $_SERVER['PHP_SELF'] ?>" method="post" name="nyhet">
<input name="overskrift" type="text" value="">
<input name="ingress" type="text" value="">
<input name="nyhetstekst" type="text" value="">
<input type="submit" name="lagre" value="Lagre turen" />
</form>

 

Side 2 (nyhet.php)

 


// Her vil jeg gjerne at bare den siste registrerte nyheten skal vises

$sql = "SELECT * FROM nyhet";
$result = mysql_query($sql, $link);
if (!$result) {
  die('Det oppstod en feil: ' . mysql_error());
} else {
 while ($row = mysql_fetch_assoc($result)) {
   echo $row['overskrift'];
   echo $row['ingress'];
   echo $row['artikkeltekst'];
 }
}

Endret av Teobald
Lenke til kommentar
Videoannonse
Annonse

Helt utrolig. I hvor mange hundre/tusen tråder har ikke SQL-injection blitt nevnt? Og fremdeles finnes det folk som ikke aner hva det kan medføre.

 

Anyway, slik kan du gjøre det.

 

$overskrift = mysql_real_escape_string( $_POST['overskrift'] );
$ingress = mysql_real_escape_string( $_POST['ingress'] );
$tekst = mysql_real_escape_string( $_POST['nyhetstekst'] );

$sql = "INSERT INTO nyheter(overskrift, ingress, nyhetstekst)
VALUES( '$overskrift', '$ingress', '$nyhetstekst' )";

if (@mysql_query($sql)){
echo "<br /><br />Lagring av nyhet var vellykket.";
// ?id=ID i linken under illustrerer bare hvordan artikkelID legges på link...
$id = mysql_insert_id();
echo "<meta http-equiv='refresh' content='3;URL=nyhet.php?id={$id}' />";
   } 

 

På spm nr 2 vil spørringen bli noe slikt:

SELECT overskrift, ingress, nyhetstekst 
FROM nyhet ORDER BY artikelID DESC LIMIT 1

Ikke bruk "SELECT * FROM ...." med mindre du trenger ALLE radene i tabellen.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...