Gå til innhold

Får ikke lastet variabler inn i skjema(løst)


Anbefalte innlegg

Start på den siste posten jeg har lagt inn.

 

 

Holder på med å lage en database som skal innholde rc biler. Har lagd et skjema som klarer å sette inn rc biler i databasen, holder nå på med å lage et skjema som gjør at man kan oppdatere ting i databasen, og her kommer problemene. Har tatt stort sett alt fra en bok om php og mysql er ennå ikke flink nok selv til å kode.

Har lagd en function som skal lage dropdown meny:

 

function create drop_down($identifier,$pairs,$firstentry,$multiole="")
{
//Start the dropdown list with the <select> element and title
$dropdown = "<select name=\"$identifier\" multiple=\"$multiple\">";
$dropdown .= "<option name=\"\">$firstentry</option>";


//Create the dropdown elements
foreach($pairs AS $value => $name)
{
$dropdown .= "<option name=\"$value\">$name</option>";
}

//conclude the dropdown and return it
echo "</select>";
return $dropdown;
}

 

Men hvor skal den ligge i for hold til denne:

<?php
// Connect to the db server and select a database
mysql_connect("localhost","root","triadpass")
or die("could not connet to mysql server");

mysql_select_db("frizells") or die("Could not select database");

//Retrive the language table data
$query = "SELECT rowID, name FROM rc_bil ORDER BY name";
$result = mysql_query($query);

//Create an associative array based on the table data
while($row = mysql_fetch_array($result))
{
$value = $row["rowID"];
$name = $row["name"];
$pairs["$value"] = $name;
}

echo "Velg produkt som ønskes oppdatert: <br />";
echo create_dropdown("rc_bil",$pairs,"Choose One:");


?>

 

Trenger seriøst hjelp her.. da dette er utenfor mitt kunnskap område.

Endret av Lord_Linus
Lenke til kommentar
Videoannonse
Annonse

Du har allerede definert funksjonen med

function create drop_down($identifier,$pairs,$firstentry,$multiole="")

. Du trenger bare å plassere den enten nederst eller øverst i koden din (midt i går fint an også, men blir mer uoversiktelig). Så må du sette inn et funksjonskall der du trenger det.

Lenke til kommentar

<?php

function create drop_down($identifier,$pairs,$firstentry,$multiole="")
{
//Start the dropdown list with the <select> element and title
$dropdown = "<select name=\"$identifier\" multiple=\"$multiple\">";
$dropdown .= "<option name=\"\">$firstentry</option>";


//Create the dropdown elements
foreach($pairs AS $value => $name)
{
$dropdown .= "<option name=\"$value\">$name</option>";
}

//conclude the dropdown and return it
echo "</select>";
return $dropdown;
}

// Connect to the db server and select a database
mysql_connect("localhost","root","triadpass")
or die("could not connet to mysql server");

mysql_select_db("frizells") or die("Could not select database");

//Retrive the language table data
$query = "SELECT rowID, name FROM rc_bil ORDER BY name";
$result = mysql_query($query);

//Create an associative array based on the table data
while($row = mysql_fetch_array($result))
{
$value = $row["rowID"];
$name = $row["name"];
$pairs["$value"] = $name;
}

echo "Velg produkt som ønskes oppdatert: <br />";
echo create_dropdown("rc_bil",$pairs,"Choose One:");

?>

 

Btw: Er du sikker på at du har infoen i databasen din, og at logininfo stemmer?

Lenke til kommentar

Har løst det problemet jeg opprinelig hadde, tenkte jeg bare kunne fortsette å poste i denne tråden så har jeg spart forumet for en post.

Mitt problem nå er følgenede; har klart å hente ut navnene på bilene og puttet dem i en liste, når jeg merker en av dem og trykker på submit, så skal da den bilen jeg har valgt

laste inn i et nytt skjerma, slik at jeg kan oppdatere den radden i databasen. men når jeg trykker på submit så kommer bare skjemaet opp, med tomme rubrikker, gidder noen å se over koden for og evnt fortelle meg hva jeg må gjøre for å løse problemet?.

Her er da koden hvor jeg velger bilen

<form action="modify.php" method="post">
<?php
// Connect to the db server and select a database
mysql_connect("localhost","root","triadpass");
mysql_select_db("frizells");

//Retrive the language table data
$query = "SELECT rowID, name FROM rc_bil ORDER BY name";
$result = mysql_query($query);

//Create an associative array based on the table data
while($row = mysql_fetch_array($result))
{
$value = $row["rowID"];
$name = $row["name"];
$pairs["$value"] = $name;
}

echo "Velg produkt som ønskes oppdatert: <br />";
echo create_dropdown("rc_bil",$pairs,"velg 1pp:");



function create_dropdown($identifier,$pairs,$firstentry,$multiple="")
{
//Start the dropdown list with the <select> element and title
$dropdown = "<select name=\"$identifier\" multiple=\"$multiple\">";
$dropdown .= "<option name=\"\">$firstentry</option>";



//Create the dropdown elements
foreach($pairs AS $value => $name)
{
$dropdown .= "<option name=\"$value\">$name</option>";
}

//conclude the dropdown and return it


return $dropdown;

}


?>
</select><br>
<input type="submit" name="submit" value="submit!">
</form>

Og her er koden som legger inn infoen i de tomme "rubrikkene"

<?php
if (isset($_POST['submit']))
{
 $rowID = $_POST['rowID'];
 
 $query = "SELECT  produktid, name, lagerstatus, pris FROM rc_bil WHERE rowID='$rowID'";
 
 $result = mysql_query($query);
 list($produktid,$name,$lagerstatus,$pris) = mysql_fetch_row($result);
 include "modifyform2.php";
}
?>

Og her er modifyform2

<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input type="hidden" name="rowID" value="<?php echo $rowID;?>">
<p>
 Product ID:<br />
 <input type="text" name="produktid" size="10" maxlenght="10" value="<?php echo $produktid;?>" />
</p>
<p>
    Name:<br />
 <input type="text" name="name" size="30" maxlenght="30" value="<?php echo $name;?>" />
</p>
<p>
    Lagerstatus:<br />
 <input type="text" name="lagerstatus" size="8" maxlenght="8" value="<?php echo $lagerstatus;?>" />
</p>
<p>
 Pris:<br />
 <input type="text" name="pris" size="6" maxlenght="6" value="<?php echo $pris;?>" />
 </p>
  <p>
 <input type="submit" name="submit" value="Submit!" />
</p>
</form>

Har laget skjemaet som skal brukes for å oppdatere databasen, men har ikke prøvd det, da jeg vil få til det jeg holder på med nå. Vet at dette er mye å se over, men takker og bukker for den som gidder. PHP er gøy!!

Lenke til kommentar

Her er hele koden som generert;

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>

<form action="/frizellstherevolution/modify.php" method="post">
<input type="hidden" name="rowID" value="">
<p>

 Product ID:<br />
 <input type="text" name="produktid" size="10" maxlenght="10" value="" />
</p>
<p>
    Name:<br />
 <input type="text" name="name" size="30" maxlenght="30" value="" />
</p>
<p>

    Lagerstatus:<br />
 <input type="text" name="lagerstatus" size="8" maxlenght="8" value="" />
</p>
<p>
 Pris:<br />
 <input type="text" name="pris" size="6" maxlenght="6" value="" />
 </p>
  <p>

 <input type="submit" name="submit" value="submit" />
</p>
</form>
</BODY>
</HTML>

 

Og her den som blir generert av create_dropdown()

 

3<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">

</HEAD>

<BODY>
<form action="modify.php" method="POST">
Velg produkt som ønskes oppdatert: <br /></select><select name="rc_bil" multiple=""><option name="">velg 1:</option><option name="7">Bullhead</option><option name="9">Ford Focus WRC</option><option name="11">King Black Foot</option><option name="12">Mega Force</option><option name="4">Stormracer 4wd</option><option name="6">Subaru Impreza WRC</option><option name="8">TXT-1 m/option</option><option name="5">Ultima St Racing Gp</option><option name="10">Wild Willy</option></select><br>

<input type="submit" name="submit" value="submit">
</form>
</BODY>
</HTML>

Endret av Lord_Linus
Lenke til kommentar

Heh :p

//Create the dropdown elements
foreach($pairs AS $value => $name)
{
$dropdown .= "<option name=\"$value\">$name</option>";
}

//conclude the dropdown and return it

.. er ikke option name.. skal være option value =)

//Create the dropdown elements
foreach($pairs AS $value => $name)
{
$dropdown .= "<option value=\"$value\">$name</option>";
}

//conclude the dropdown and return it

 

Hvis du DA bruker variablen $_POST['rc_bil'] som istedetfor $rowID, skal det funke =)

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...