Avatar billede nickyc Nybegynder
18. maj 2005 - 15:32 Der er 6 kommentarer og
1 løsning

min update forespørgsel virker ikke? id mangler, hvorfor

Hey alle...

Check dette:

  <?
    if ($_POST['submit'] != "") {
 
    $id = $_REQUEST['id'];
    $emne = addslashes($_POST['emne']);
    $navn = addslashes($_POST['navn']);
    $nyhed = addslashes($_POST['nyhed']);
           
    $sql = "UPDATE nyheder SET emne='$emne', forfatter='$navn', nyhed='$nyhed' WHERE id='$id'";
    if (mysql_query($sql))
{
echo "<br />";
echo "<strong>Nyheden er nu opdateret<strong />";
echo $sql;
}
else
{
  echo "<br />";
  echo "Der skete en fejl ved opdatering af".mysql_error();
}


}
elseif($_REQUEST['id'] != "")
{
    $id = $_REQUEST['id'];
    $rediger = mysql_query("SELECT * FROM nyheder WHERE id=$id") or die(mysql_error());
    echo $id;
   
    while($myrow = mysql_fetch_assoc($rediger)) {
   

?>
----------
MIN FORM
----------
<?

}
}

?>

Når jeg skriver min update ud:

UPDATE nyheder SET emne='Online2sdsdsd', forfatter='Nicky Christensen2dsds', nyhed='My new online playground is now finished! Let me know what you think :) Btw, it\\\'s this site2sdsd' WHERE id=''

Som i kan se er den galt hvor der står WHERE id=''

Hvorfor propper den ikke id ind der - det skulle den da meget gerne?

kan ik rigtig lige finde min fejl :/
Avatar billede busschou Praktikant
18. maj 2005 - 15:48 #1
Det var en kort form du har ;o)
Hvor får du $id fra? Du bruger en Request...men findes den?
Du skal nok sende den med som $_POST variable i din form ligesom de andre men bare som et hidden felt
Avatar billede nickyc Nybegynder
18. maj 2005 - 15:51 #2
får id fra en anden side...

Kode til denne:

    <?
    include("../includes/conn.inc.php");
        $sql = "SELECT * FROM nyheder ORDER by dato";
        $resultat = mysql_query($sql);
                        echo "<table width=500><tr><td width=83>";
                        echo "<strong>Emne:</strong></td><td width=83><strong>Navn</strong></td><td width=83><strong>Dato</strong></td><td width=83><strong>Nyhed</strong></td><td width=83><strong>Muligheder</strong></td>";
                        echo "</tr></table>";
            while ($myrow = mysql_fetch_assoc($resultat))
            {   
   
                       
                        echo "<table width=500><tr><td width=83>";
                        echo $myrow['emne'];  "</td>";
                        echo "<td width=83>" .$myrow['forfatter'] . "</td>";
                        echo "<td width=83>" . $myrow ['dato'] . "</td>";
                        echo "<td width=83>" . substr($myrow['nyhed'],0,30)  . "...</td>";
                        echo "<td width=83>&nbsp;| <a href='java script:slet(" . $myrow[id] . ");'>Slet</a> | <a href='rediger_nyhed.php?id=$myrow[id]'>Rediger</a></td>";
                        echo "</tr></table>";
            }

        ?>

-----------
Avatar billede busschou Praktikant
18. maj 2005 - 15:56 #3
Så burde du jo kunne se den i din adresse linje ?
Og du burde hente den med
$id = $_GET['id']
Avatar billede nickyc Nybegynder
18. maj 2005 - 15:57 #4
hvis jeg smider den i eet hidden field virker det, men er det ikke usikkert på en eller anden måde?

Mener da også jeg har fået det til at virke uden et hidden field før nemlig ?
Avatar billede busschou Praktikant
18. maj 2005 - 15:59 #5
Jeg troede du gjorde det med en form af en slags
Sikkerheden kommer an på hvad du ellers har af sikkerhed?
Hvis alle kan skrive "rediger_nyhed.php?id=117" i adresse linjen og rette...så er det ikke så heldig ;o)
Avatar billede nickyc Nybegynder
18. maj 2005 - 16:02 #6
altså min sikkerhed er at det er indeunder noget login, og på hver side er der en der checker om ens session er sat og sådan... Det ser ud til at fungere meget godt...

men ihvertfald, nu har jeg smidt det i et hidden field, og ændret REQUEST til POST - og det fungere nu... Så hvis du nu lige ligger et svar?
Avatar billede busschou Praktikant
18. maj 2005 - 16:04 #7
oki tjek på session det er jo fint nok :o)
Godt det virker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester