login  Naam:   Wachtwoord: 
Registreer je!
 Forum

formulier checken (Opgelost)

Offline tchiloh - 19/11/2007 21:42 (laatste wijziging 27/11/2007 19:07)
Avatar van tchilohNieuw lid het is mij niet gelukt en ik denk dat het aan mijn script ligt want ik heb al daarboven if gebruikt. kan er iemand naar kijken?

41 antwoorden

Gesponsorde links
Offline DMM - 19/11/2007 21:59 (laatste wijziging 19/11/2007 22:02)
Avatar van DMM PHP beginner Bekijk dit voorbeeldje eens. Zelfs als je een beginner bent moet je in staat zijn het te begrijpen.

  1. <?php
  2. // Bij gebruik van database: voeg de connectie toe!
  3.  
  4. if(isset($_POST['form1']) && isset($_POST['form2'])) {
  5. // form1 = de naam van onze eerste form
  6. // form2 = de naam van onze tweede form
  7. // natuurlijk kun je dat aanpassen
  8.  
  9. // Er is iets gepost, dus we gaan verder
  10.  
  11. if(!empty($_POST['form1']) && !empty($_POST['form2'])) {
  12. // Alle velden zijn ingevuld, dus we gaan door
  13.  
  14. // Formulierverwerking: Mail, database,..
  15.  
  16. } else {
  17. echo "Alle velden moeten ingevuld worden.";
  18. }
  19.  
  20. } else {
  21. // Geef formulier weer
  22. ?>
  23. <form method="post" action="" />
  24. <input type="text" name="form1" />
  25. <input type="text" name="form2" />
  26. <input type="submit" value="submit" />
  27. </form>
  28.  
  29. <?php
  30. } // Einde else
  31. ?>
Offline tchiloh - 19/11/2007 22:15
Avatar van tchiloh Nieuw lid het is mij daar mee niet gelukt
Offline DMM - 19/11/2007 22:18
Avatar van DMM PHP beginner Wat precies lukt je niet? Kun je anders eens de relevante code posten?
Offline Simax - 19/11/2007 22:45
Avatar van Simax Onbekend Bekijk eens wat tutorials..

 
Offline Gerard - 19/11/2007 22:51
Avatar van Gerard Ouwe rakker Ik heb een klein voorbeeld uitgewerkt zoals je het aan zou kunnen pakken. Het is heel basic maar het zou in ieder geval moeten voldoen om je een steuntje in de rug te geven.

http://www.pastebin.be/6858
Offline tchiloh - 20/11/2007 18:51 (laatste wijziging 27/11/2007 19:07)
Avatar van tchiloh Nieuw lid het is mij niet gelukt en ik denk dat het aan mijn script ligt want ik heb al daarboven if gebruikt. kan er iemand naar kijken?

Offline Giant - 23/11/2007 19:51
Avatar van Giant PHP beginner $_POST < - dit opzich is toch geen var?
of ligt dit aan mij? dan moet het toch bijv. $_POST['voornaam'] zijn?
Offline tchiloh - 25/11/2007 18:22
Avatar van tchiloh Nieuw lid volgens mij klopt mij script,

alleen weet ik nog steeds niet wat ik moet doen om mijn formulieren te laten checken.

de 2 voorbeelden die gepost zijn doen het niet, in iedergeval niet bij mijn script.

zou het eventueel wel met include wel lukken?
Offline DMM - 25/11/2007 18:32 (laatste wijziging 25/11/2007 18:42)
Avatar van DMM PHP beginner Kijk eens naar wat ik hierboven gepost heb: link

Bij de verwerking van je gegevens, kun je er zoiets bijschrijven (meer bepaald i.p.v. deze zin: // Formulierverwerking: Mail, database,..):

  1. // er is al gecontroleerd of er iets gepost is
  2. // er is al gecontroleerd of alle velden ingevuld waren
  3. // de databaseconfiguratie is al geïncludeerd
  4.  
  5. $form1 = mysql_real_escape_string($_POST['form1']);
  6. $form2 = mysql_real_escape_string($_POST['form2']);
  7.  
  8. // query uitvoeren
  9. $query = mysql_query("INSERT INTO content (id, form1, form2) VALUES ('".$form1."', '".$form2."' ");
  10.  
  11. // verwijzen naar volgende vragenlijst
  12. header("Location: vragenlijst2.php");
  13.  
  14. // hieronder komt nog het formulier (zie vorige post)
  15.  
  16. ?>


Bij de volgende vragenlijst moet je gebruik maken van UPDATE binnen je query. Ik moet wel zeggen, indien je een compléte PHP/MySQL-beginner bent zal het niet zo simpel zijn...

Edit:
Het hele script gebundeld
Offline tchiloh - 25/11/2007 19:34
Avatar van tchiloh Nieuw lid ik maak geen gebruik van MySQL in dit bestand. zou het daar aan kunnen liggen  
Offline DMM - 25/11/2007 19:46
Avatar van DMM PHP beginner Je kunt met die gegevens natuurlijk ook iets anders doen. Verzenden in een mail bijvoorbeeld, of opslaan in een .txt bestand...
Offline tchiloh - 25/11/2007 19:52
Avatar van tchiloh Nieuw lid ja dat weet ik, maar ik wil dat ze alle gegevens invullen en niet dat ze er 1 of meer overslaan
Offline DMM - 25/11/2007 19:56
Avatar van DMM PHP beginner
Citaat:
ja dat weet ik, maar ik wil dat ze alle gegevens invullen en niet dat ze er 1 of meer overslaan

Het controleren of de gegevens al dan niet ingevuld zijn, heeft helemaal niets te maken met hetgeen je achteraf met de gegevens doet. Dus het stuk dat controleert of alles ingevuld is, mag je laten staan.
Offline tchiloh - 25/11/2007 20:35 (laatste wijziging 27/11/2007 19:08)
Avatar van tchiloh Nieuw lid ik heb hem zo gedaan maar hji werkt niet:
Offline Giant - 25/11/2007 20:38
Avatar van Giant PHP beginner probeer van de eerste paar else ifjes eens if te maken
Offline tchiloh - 25/11/2007 20:53 (laatste wijziging 25/11/2007 21:01)
Avatar van tchiloh Nieuw lid geen resultaat. hij negeert hem nog steeds.

Offline Giant - 26/11/2007 13:24
Avatar van Giant PHP beginner even een vraagje,
wat werkt niet,
en wat negeert hij?
want ik heb hem net even getest en werkt perfect...
(met de else ifjes)
Offline tchiloh - 26/11/2007 18:29
Avatar van tchiloh Nieuw lid hij laat alles zien en je kunt alles invullen. maar als je niks invult dan gaat hij gewoon door. je krijgt geen foutmeldeng met dat je de veld moet invullen.
Offline Giant - 26/11/2007 21:06 (laatste wijziging 26/11/2007 21:22)
Avatar van Giant PHP beginner ja dat is logisch... 
je zegt: als $_POST['hier_de_post]; bestaat session['form'] = blabla
je checked hier alleen of de post inderdaad bestaat, en die bestaat standaart wanneer je een formulier verstuurt;-)

edit:
hierbij even het voorbeeldje:
plaatscode: 4164
LET OP: ik heb dit even snel in elkaar geflanst dus er kunnen fouten inzitten;-)
Offline tchiloh - 26/11/2007 21:21 (laatste wijziging 27/11/2007 19:08)
Avatar van tchiloh Nieuw lid je hebt denk ik geen fout in zitten maar de error die ik nu krijg is beneden in de script met
  1. <?php
  2. } else if (!isset($_SESSION['form']['adres'])) {
  3. ?>


dat is in regel 99 van
Offline Giant - 26/11/2007 21:38
Avatar van Giant PHP beginner kun je ook miss even de error geven?
Offline tchiloh - 26/11/2007 21:39 (laatste wijziging 27/11/2007 19:08)
Avatar van tchiloh Nieuw lid dit heb ik in mijn script:
Offline Giant - 26/11/2007 21:41
Avatar van Giant PHP beginner :P
ik krijg de melding bij de eerste post:
je moet wel je adres invullen:P,
Offline tchiloh - 26/11/2007 21:42 (laatste wijziging 26/11/2007 21:44)
Avatar van tchiloh Nieuw lid precies die krijg ik ook 
wat moet ik daar aan doen
Offline Giant - 26/11/2007 21:48
Avatar van Giant PHP beginner $_SESSION['form'] = $_POST; < - waarom is dat geen array_merge?
Offline tchiloh - 26/11/2007 21:52 (laatste wijziging 27/11/2007 19:08)
Avatar van tchiloh Nieuw lid dezelfde effect.

de script is nu:
Offline Giant - 26/11/2007 21:54
Avatar van Giant PHP beginner zet bij die adres eens:
&& isset($_SESSION['form']['voornaam'])
zoiets zou je sessie er nu toch uit moeten zien?
Offline tchiloh - 26/11/2007 21:58 (laatste wijziging 27/11/2007 19:09)
Avatar van tchiloh Nieuw lid als hij zo moet dat doet hij het niet :
Offline Giant - 26/11/2007 21:59
Avatar van Giant PHP beginner ik bedoelde regel 9:P
elseif(empty($_POST['adres']) && isset($_SESSION['form']['voornaam'])) {

maar moet gaan...
dus later
Offline tchiloh - 26/11/2007 22:03 (laatste wijziging 27/11/2007 19:09)
Avatar van tchiloh Nieuw lid een fout in regel 18.

  1. $_SESSION['form'] = array_merge($_SESSION['form'], $_POST);


Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.262s