Avatar billede cloud-user Nybegynder
01. marts 2015 - 10:24 Der er 3 kommentarer og
1 løsning

Bøvl med UPDATE / GET

Hej Allesammen.

i må lige bære over med mig, jeg er nybegynder og har været iggenem en masser bøger/video men dette her kan jeg ikke få til at funge..

Jeg har en tabel med de forskellige record fra DB, der har jeg lavet en knap som hedder edit. som skal sende en videre til edit_form.

Linien ser således ud i browseren:
index.php?content=editProduct&edit=90 - hvor edit=90 er ID 90.

Så på selve edit_form er der en php scripts til at læse de nuværende værdier ind i text boks.

PHP:

<? // READ FROM DB & GET ID
include_once "includes/conn.php";

if( isset($_GET['edit']) )
{
$id = $_GET['edit'];
$res = mysql_query("SELECT ID, name, prod_nr FROM t_product");
$row = mysql_fetch_array($res);
      }        ?>

Formen ser sådan ud:

                                    <form role="form" action="" method="POST" ><br>

   
   
    <div class="col-xs-5 form-group-sm">
    <input type="text" class="form-control" name="Newname" value=" <?php echo $row[1]; ?>"  >
  </div>
    <div class="col-xs-3 form-group-sm">
    <input type="text" class="form-control"  name="Newprod_nr" value=" <?php echo $row[2]; ?>" ></div>
  <br><br>
 
  <div> <input type="hidden" class="form-control" name="ID" value="<?php echo $row[0]; ?>" </div>



   
                          <button type="submit" class="btn btn-primary btn-xs" name="submit" > Opdater</button>
                                          <button type="reset" class="btn btn-danger btn-xs"> Slet</button></form></p> 

men der sker desværre ikke noget

http://snap.ashampoo.com/p9YLdDjf

Det er i hvert fald en forhindring inden jeg kan komme videre til UPDATE:

Tak på forhånd
Avatar billede vagnk Juniormester
01. marts 2015 - 11:12 #1
Eftersom du ikke har lagt op til noget med <table> på siden gætter jeg på at du skal have "WHERE ID = $id" ind i din query og lave en mysql_fetch_row() i stedet for mysql_fetch_array(), så du kun får en række og så kan du bruge index [0], [1] og [2].
Avatar billede cht22 Professor
01. marts 2015 - 11:25 #2
Det må blive noget i stil med følgende, du må lige tilpasse variabelnavnene:

<?php
if( isset($_GET['edit']) )
{
$id = $_GET['edit'];

$con = mysql_connect("$db_host","$db_user","$db_pass");
if (!$con) {
die('Could not connect: ' . mysql_error());
}

mysql_select_db("$check_database_name", $con);

$result = mysql_query("SELECT ID, name, prod_nr FROM t_product WHERE ID = $id");

if($row = mysql_fetch_array($result))
  {

// $row['Newprod_nr'];

$Newname = "";
if (isset($_GET['Newname'])
$Newname = $_GET['Newname'];

$Newprod_nr = "";
if (isset($_GET['Newprod_nr'])
$Newprod_nr = $_GET['Newprod_nr'];

$sql = "UPDATE t_product SET Newname='$Newname',Newprod_nr='$Newprod_nr' WHERE ID=$id";

mysql_query($sql,$con);

}

mysql_close($con);

}
?>
Avatar billede cloud-user Nybegynder
01. marts 2015 - 15:38 #3
ville denne kode første vise hvad der i DB ind man trykker på nogle knapper ?
Avatar billede cht22 Professor
01. marts 2015 - 21:05 #4
Nej fordi der er en if-sætning der kontrollerer om formularen er brugt.
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

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