Avatar billede bruna Nybegynder
22. juni 2003 - 14:20 Der er 4 kommentarer og
1 løsning

Hente data ind på en ordrebekræftelsesside

Fra bestilling.php kan man klikke på indkøbskurve udfra hver vare. Herefter præsenteres man for denne:

<form onSubmit="return valider(this)" name="indkoebskurv" action="bestilling.php" method="post">

<input type="hidden" name="id" value='{$row.id}'>
<input type="hidden" name="bestil" value="ok">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="34%" class="undermenu">Bognr:</td>
<td width="66%"><input type="text" name="id" size="40" style="width:140px; height:16px; border:1px solid black" class="tekst" value='{$row.id}'></td>
  </tr>
    <tr>
<td width="34%" class="undermenu">Title:</td>
<td width="66%"><input type="text" name="title" size="40" style="width:140px; height:16px; border:1px solid black" class="tekst" value='{$row.title}'></td>
  </tr>
  <tr>
...osv
Tilsidst i formularen indtaster man navn osv..

Min funktion er sådan:


function indkoebskurv($title, $author, $publisher, $year, $price, $quantity, $fornavn, $efternavn, $adresse, $postnr, $bynavn, $telefonnr, $email) {
$sql="INSERT INTO ordrer (id, title, author, publisher, year, price, quantity, fornavn, efternavn, adresse, postnr, bynavn, telefonnr, email, dato) VALUES ('', '$title', '$author', '$publisher', '$year', '$price', '$quantity', '$fornavn', '$efternavn', '$adresse', '$postnr', '$bynavn', '$telefonnr', '$email', NOW())";    
$result=mysql_query($sql)or die (mysql_error());
return mysql_insert_id();

Jeg vil gerne have at bogens id indsættes i ordrer også. Ordre_nr skal også indsættes, men der gik kage i det, da jeg lavede den til primærnøgle i stedet for id'en.

Ved godt, at der skal laves en kalkulation også, men den venter jeg lige med.

Håber, ovenstående var til at forstå, og at nogen kan hjælpe.
Avatar billede bruna Nybegynder
22. juni 2003 - 14:53 #1
Jeg har lavet det om, sådan at bogens felter ikke er inputfelter, de skrives bare over som alm. tekst. Men hvordan laver jeg så min funktion og PHP for at jeg kan skrive til tabellen ordrer?

Jeg får jo denne fejl:

Notice: Undefined index: title in /home/x/bestilling.php on line 30

Notice: Undefined index: author in /home/x/bestilling.php on line 30

Notice: Undefined index: publisher in /home/x/bestilling.php on line 30

Notice: Undefined index: year in /home/x/bestilling.php on line 30

Notice: Undefined index: price in /home/x/bestilling.php on line 30

Warning: Cannot modify header information - headers already sent by (output started at /home/x/bestilling.php:30) in /home/web/x/bestilling.php on line 31


}elseif
(is_array($_POST) && isset($_POST['bestil'])&& isset($_POST['id'])) {

indkoebskurv($_POST['id'], $_POST['title'], $_POST['author'], $_POST['publisher'], $_POST['year'], $_POST['price'], $_POST['quantity'], $_POST['fornavn'], $_POST['efternavn'], $_POST['adresse'], $_POST['postnr'], $_POST['bynavn'], $_POST['telefonnr'], $_POST['email']);
header("Location: bestilling.php");


Funktionen er:

function indkoebskurv($title, $author, $publisher, $year, $price, $quantity, $fornavn, $efternavn, $adresse, $postnr, $bynavn, $telefonnr, $email) {
$sql="INSERT INTO ordrer (id, title, author, publisher, year, price, quantity, fornavn, efternavn, adresse, postnr, bynavn, telefonnr, email, dato) VALUES ('', '$title', '$author', '$publisher', '$year', '$price', '$quantity', '$fornavn', '$efternavn', '$adresse', '$postnr', '$bynavn', '$telefonnr', '$email', NOW())";    
$result=mysql_query($sql)or die (mysql_error());
return mysql_insert_id();
   
}

Håber nogen kan hjælpe mig videre!!
Avatar billede mathiash Nybegynder
22. juni 2003 - 19:25 #2
Hej!

}elseif
(is_array($_POST) && isset($_POST['bestil'])&& isset($_POST['id'])) {

indkoebskurv($_POST['id'], $_POST['title'], $_POST['author'], $_POST['publisher'], $_POST['year'], $_POST['price'], $_POST['quantity'], $_POST['fornavn'], $_POST['efternavn'], $_POST['adresse'], $_POST['postnr'], $_POST['bynavn'], $_POST['telefonnr'], $_POST['email']);
header("Location: bestilling.php");

1. funktionen:
Det er vel fordi at du har glemt at sætte "" ved tekst.


2. Warning: Cannot modify header information - headers already sent by (output started at /home/x/bestilling.php:30) in /home/web/x/bestilling.php on line 31

det er fordi at du har din header("... du har allerede brugt en header af en slags.

så prøv med dette:

}elseif
(is_array($_POST) && isset($_POST['bestil'])&& isset($_POST['id'])) {

indkoebskurv($_POST['id'], "$_POST['title']", "$_POST['author']", "$_POST['publisher']", $_POST['year'], $_POST['price'], "$_POST['quantity']", "$_POST['fornavn']", "$_POST['efternavn']", "$_POST['adresse']", $_POST['postnr'], "$_POST['bynavn']", $_POST['telefonnr'], "$_POST['email']");
header("Location: bestilling.php");

//Mathias
Avatar billede bruna Nybegynder
22. juni 2003 - 20:56 #3
Det er ikke helt rigtigt, jeg har nemlig også en anden funktion med $_POST[] uden " ".
Jeg får også denne fejl nu, når jeg forsøger at bestille. Altså nu kommer jeg ikke ind på min indkøbskurv.
Parse error: parse error, unexpected '\"', expecting ']' in /home/web/web1780/EKSAMENSOPGAVE/bestilling.php on line 35

Jeg tror altså, at fejlen har noget at gøre med at bogens felter ikke er i inputfelter og at det kun er kundens oplysninger, der står i inputfelter, når man vælger 'bestil'. Hvordan poster jeg bogens data med ind hele vejen til tabellen ordrer?
Avatar billede bruna Nybegynder
22. juni 2003 - 21:01 #4
Nu får jeg  denne fejl, når jeg forsøger at bestille ordren:

Notice: Undefined index: 'title' in /home/x/bestilling.php on line 34

Notice: Undefined index: 'author' in /home/x/bestilling.php on line 35

Notice: Undefined index: 'publisher' in /home/x/bestilling.php on line 35

Notice: Undefined index: year in /home/web/x/bestilling.php on line 35

Notice: Undefined index: price in /home/x/bestilling.php on line 36

Notice: Undefined index: 'fornavn' in /home/x/bestilling.php on line 36

Notice: Undefined index: 'efternavn' in /home/x/bestilling.php on line 37

Notice: Undefined index: 'adresse' in /home/x/bestilling.php on line 37

Notice: Undefined index: 'bynavn' in /home/x/bestilling.php on line 38

Notice: Undefined index: 'email' in /home/web/x.php on line 39

Warning: Cannot modify header information - headers already sent by (output started at /home/x/bestilling.php:34) in /home/web/x/bestilling.php on line 40

Den sidste header already sent.... forstår jeg ikke?
Avatar billede bruna Nybegynder
23. juni 2003 - 09:35 #5
Trækker det her tilbage.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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