Avatar billede naebet Nybegynder
26. januar 2005 - 17:06 Der er 7 kommentarer og
1 løsning

Opdatere data i MYSQL via php

Hej

Jeg får følgende:
Notice: Undefined index: cmd in c:\program files\easyphp1-7\www\mitsite\edit.php on line 29
hvilket er if($_GET["cmd"]=="edit" || $_POST["cmd"]=="edit")


<?
include 'connect.php';   
//select which database you want to edit
mysql_select_db("db");

//If cmd has not been initialized
if(!isset($cmd))
{
      $result = mysql_query("select * from bestilling_tbl order by bestillingsdato");
 
  //run the while loop that grabs all the news scripts
  while($r=mysql_fetch_array($result))
  {
      //grab the title and the ID of the news
      $bestillingsdato=$r["bestillingsdato"];
      $id=$r["id"];//take out the id
   
    //make the title a link
      echo "<a href='edit.php ?cmd=edit&id=$id'>$bestillingsdato - Rediger</a>";
      echo "<br>";
    }
}
?>
<?
if($_GET["cmd"]=="edit" || $_POST["cmd"]=="edit")
{
  if (!isset($_POST["submit"]))
  {
      $id = $_GET["id"];
      $sql = "SELECT * FROM bestilling_tbl WHERE id=$id";
      $result = mysql_query($sql);       
      $myrow = mysql_fetch_array($result);
      ?>
     
      <form action="edit.php" method="post">
      <input type=hidden name="id" value="<?php echo $myrow["id"] ?>">
 
    Bestillingsdato:<INPUT TYPE="TEXT" NAME="bestillingsdato" VALUE="<?php echo $myrow["bestillingsdato"] ?>" SIZE=30><br>
    Leverandør:<input type="text" NAME="leverandoer" value="<? echo $myrow["leverandoer"] ?>" size=30<br>
    <br>Pris:<INPUT TYPE="TEXT" NAME="pris" VALUE="<?php echo $myrow["pris"] ?>" SIZE=30><br>
 
      <input type="hidden" name="cmd" value="edit">
 
      <input type="submit" name="submit" value="submit">
 
      </form>
 
<? } ?>
<?
  if ($_POST["submit"])//if ($_POST["$submit"])
  {
      $bestillingsdato = $_POST["bestillingsdato"];//bestillingsdato
      $leverandoer = $_POST["leverandoer"];//
      $pris = $_POST["pris"];
     
      $sql = "UPDATE bestilling_tbl SET bestillingsdato='$bestillingsdato',leverandoer='$leverandoer',pris='$pris' WHERE id=$id";
      //replace news with your table name above
      $result = mysql_query($sql);
      echo "Så er den opdateret";
    }
}
?>
Avatar billede baitianlong Nybegynder
26. januar 2005 - 17:21 #1
Du kan checke post og get samtidig med $_REQUEST['cmd']
Avatar billede naebet Nybegynder
26. januar 2005 - 17:33 #2
Har prøvet med $_REQUEST['cmd']

det er som om at det er cmd der er årsagen til problemet. Jeg er ny i PHP så jeg kan ikke gennemskue det

Notice: Undefined index: cmd in c:\program files\easyphp1-7\www\edit.php on line 29

Det fungere, men den kommer med denne fejl
Avatar billede baitianlong Nybegynder
26. januar 2005 - 17:46 #3
Prøv med disse ændringer:

if(!isset($cmd))

ændres til

if(empty($_REQUEST['cmd']))

og

?>
<?
if($_GET["cmd"]=="edit" || $_POST["cmd"]=="edit")

ændres til

else
Avatar billede naebet Nybegynder
26. januar 2005 - 18:12 #4
skal jeg skifte hele if($_GET["cmd"]=="edit" || $_POST["cmd"]=="edit")
med else?

jeg har forsøgt at ændre if(!isset($cmd))
men det giver det samme
Avatar billede baitianlong Nybegynder
26. januar 2005 - 19:23 #5
ja, for cmd kan jo aldrig være andet end 'edit' eller tom

Så prøv at skifte det ud, jeg har skrevet...
Avatar billede naebet Nybegynder
27. januar 2005 - 08:27 #6
Det er rigtigt, men det ved den hvist ikke for denskriver

Parse error: parse error, unexpected T_ELSE in
Avatar billede naebet Nybegynder
28. januar 2005 - 08:11 #7
skal der flere point i for at det bliver spændende ;-)
Avatar billede naebet Nybegynder
05. april 2005 - 14:40 #8
lukker
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