Invulformulier met mysql

Pagina: 1
Acties:
  • 43 views sinds 30-01-2008

  • michelc85
  • Registratie: Juli 2002
  • Laatst online: 29-04 19:43
Goedemorgen,

Ik probeer via een invulformulier in een mysql database te schrijven .
Gaat allemaal prima tot dat ik een afhaler wil invoeren.
Deze wordt gekozen met een optionbox(zie code hieronder).

Als ik bij de optionbox een waarde heb gekozen dan wordt er in de database gewoon nog een leeg veld toegevoegd, terwijl hij in de optionbox wel de juiste waarde aangeeft.

Heb al op internet gezocht , maar dacht laat ik het na 1,5 uur zoeken hier maar eens vragen.


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 <?
mysql_connect('localhost','root',''); 
mysql_select_db('kenteken') or die (mysql_error()); 



if(isset($_POST['verzenden'])) 
  { 
    $sLaminaat            =    addslashes($_POST['Laminaat']); 
    $skenteken            =    addslashes($_POST['kenteken']); 
    $safhaler             =    addslashes($_POST['afhaler']); 
    $sleget               =    addslashes($_POST['leget']); 
    $sduplicode           =    addslashes($_POST['duplicode']); 
     
    mysql_query("INSERT INTO LG (Laminaat, kenteken, afhaler, leget, duplicode) VALUES ('".$sLaminaat."', '".$skenteken."', '".$safhaler."', '".$sleget."', '".$sduplicode."')") or die (mysql_error()); 

    echo 'Je gegevens zijn succesvol in de database geplaatst'; 
  } 
else 
  { 
?> 



<p align="center">[img]"kenteken.JPG"[/img]</p>
<p>&nbsp;</p>
<form action=" <?=$_SERVER['PHP_SELF']?> " method="POST">
  <p><span class="style1">Laminaatnummer</span>: 
    <input type="text" name="Laminaat">
  </p>
  <p><br /> 
    <span class="style1">Kenteken</span>: 
    <input type="text" name="kenteken">
  </p>
  <p><br /> 
    <span class="style1">afhaler:</span>    <?php 
   
 $sql = "SELECT ID,NAAM FROM afhaler";
   $results = mysql_query($sql);   
echo "<select name=\"NAAM\" size=\"1\">\n";  
 while($record=mysql_fetch_array($results))
{       echo "<option value=\"".$record["ID"]."\">".$record["NAAM"]."
</option>\n";   }   echo "</select>";   ?>  
   <p><br />
    <span class="style1">Legetimatie:</span>    
    <input type="text" name="leget">
  </p>
  <p><br />
    <span class="style1">Duplicaatcode:</span>    
    <input type="text" name="duplicode">
  </p>
  <p><br />
    <input type="submit" name="verzenden" value="Aanmaken"> 
  </p>
</form> 
<? 
  } 
?>

[ Voor 157% gewijzigd door michelc85 op 23-09-2005 09:42 ]


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 00:36

Rhapsody

In Metal We Trust

Zet eens <? error_reporting(E_ALL); ?> bovenaan je pagina.
En formatteer je code ;-) dan is het allemaal wat overzichtelijker.

🇪🇺 pro Europa!


Verwijderd

Eerlijk gezegd kan ik je niet helemaal volgen, is het nou invoegen of data ophalen :?

Post iig de code even netjes op meerdere regels en geef de broncode van je <select> even :)

[ Voor 6% gewijzigd door Verwijderd op 23-09-2005 09:34 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:56

crisp

Devver

Pixelated

Wellicht handiger als je de code laat zien die de waarde wegschrijft in de database? ;)

Intentionally left blank


  • michelc85
  • Registratie: Juli 2002
  • Laatst online: 29-04 19:43
Verwijderd schreef op vrijdag 23 september 2005 @ 09:33:
Eerlijk gezegd kan ik je niet helemaal volgen, is het nou invoegen of data ophalen :?

Post iig de code even netjes op meerdere regels en geef de broncode van je <select> even :)
Hij moet de afhaler selecteren uit een tabel in de database, en daarna het gehele invulformulier in een andere tabel wegschrijven

  • Atari Paul
  • Registratie: November 2002
  • Laatst online: 21:44
Tja, dan moet je de SELECT wel dezelfde naam geven als de $_POST die je ophaald.
Dus of je SELECT moet als naam afhaler hebben of je $_POST moet NAAM worden.

Stability ?? My Atari still has it :)


Verwijderd

michelc85 schreef op vrijdag 23 september 2005 @ 09:44:
[...]


Hij moet de afhaler selecteren uit een tabel in de database, en daarna het gehele invulformulier in een andere tabel wegschrijven
Ah zo, nu ik de code zie snap ik het :)

@TS, kun je de broncode van de <select> posten/controleren op fouten. Als hier de fout niet zit, kun je $_POST even echo-en voordat je gaat invoegen, mocht ook hier de fout niet zitten dan zou ik even je query-echo-en voordat je gaat invoegen en kijken of hier een fout in zit :)

edit:
^^^ met stom

[ Voor 3% gewijzigd door Verwijderd op 23-09-2005 09:52 ]


  • cemtex
  • Registratie: Januari 2000
  • Laatst online: 22-04 20:52

cemtex

Version 1.1.1

Wat voor een veld is het 'afhaler' veld in de 2e tabel ?
Als je het formulier voor je hebt(nog niet verzonden) en je kijkt naar de source van de pagina. Zijn dan de 'id' 's wel ingevuld in de option tag ?
Maw geeft $record["ID"] wel de juiste informatie voor in de option tag ?

  • michelc85
  • Registratie: Juli 2002
  • Laatst online: 29-04 19:43
Verwijderd schreef op vrijdag 23 september 2005 @ 09:51:
[...]

Ah zo, nu ik de code zie snap ik het :)

@TS, kun je de broncode van de <select> posten/controleren op fouten. Als hier de fout niet zit, kun je $_POST even echo-en voordat je gaat invoegen, mocht ook hier de fout niet zitten dan zou ik even je query-echo-en voordat je gaat invoegen en kijken of hier een fout in zit :)

edit:
^^^ met stom
Heb nu de volledige code gepost , weet niet of ik iets vergeten ben erbij te zetten

  • Borizz
  • Registratie: Maart 2005
  • Laatst online: 02-01 15:55
Atari Paul schreef op vrijdag 23 september 2005 @ 09:50:
Tja, dan moet je de SELECT wel dezelfde naam geven als de $_POST die je ophaald.
Dus of je SELECT moet als naam afhaler hebben of je $_POST moet NAAM worden.
Bovenstaande is inderdaad het probleem, dus concreet:

Je verandert:
PHP:
1
echo "<select name=\"NAAM\" size=\"1\">\n";


in:
PHP:
1
echo "<select name=\"afhaler\" size=\"1\">\n";


OF je verandert:
PHP:
1
$safhaler              =    addslashes($_POST['afhaler']);


in:
PHP:
1
$safhaler              =    addslashes($_POST['NAAM']);

[ Voor 10% gewijzigd door Borizz op 23-09-2005 10:01 ]

If I can't fix it, it ain't broken.


  • michelc85
  • Registratie: Juli 2002
  • Laatst online: 29-04 19:43
Borizz schreef op vrijdag 23 september 2005 @ 10:00:
[...]

Bovenstaande is inderdaad het probleem, dus concreet:

Je verandert:
PHP:
1
echo "<select name=\"NAAM\" size=\"1\">\n";


in:
PHP:
1
echo "<select name=\"afhaler\" size=\"1\">\n";


OF je verandert:
PHP:
1
$safhaler              =    addslashes($_POST['afhaler']);


in:
PHP:
1
$safhaler              =    addslashes($_POST['NAAM']);
Ok tot zover bedankt mensen, alleen post ie nu de ID ipv de Naam

  • Atari Paul
  • Registratie: November 2002
  • Laatst online: 21:44
Als ik jou was zou ik me iets meer gaan verdiepen in FORM's. Een SELECT verstuurd als waarde de VALUE van de geselecteerde OPTION mee.
Aangezien jij daar de ID invult en niet de NAAM, zal je dus de ID terugkrijgen ipv de NAAM.

Stability ?? My Atari still has it :)


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 29-04 08:14

Janoz

Moderator Devschuur®

!litemod

Ja, dat is toch ook precies wat je in je html aangeeft?

Dit topic krijgt zo langzamerhand een hoog 'bij het handje neem' gehalte. Hier in Programming & Webscripting verwachten we wel enige zelfredzaamheid. Daarnaast wordt het zo langzamerhand een html probleem, aangezien je niet helemaal de werking van de option tag begrijpt. Html hoort normalitair in Webdesign & Graphics, alleen denk ik niet dat ze blij zullen zijn met dit topic daar.

Lees http://msdn.microsoft.com...erence/objects/option.asp eens door en probeer te begrijpen wat er fout gaat en wat je moet doen om dit op te lossen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1

Dit topic is gesloten.