query word niet (goed) uitgevoerd

Pagina: 1
Acties:
  • 464 views

Onderwerpen


  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
hee tweakers,

ik ben bezig met het scripten van een pagina die gegevens van een log in form verwerkt en opslaat in een database.
alleen voert het script de OR DIE uit en ik weet niet waar het aan licht.
google is overbelast door al mijn zoekvragen en nog geen antwoord gevonden dus misschien kunnen jullie me helpen

de code:

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
59
60
61
62
63
64
65
66
<?php
    include("functions.php");
    include("mysql_connect_db.php");
    
    if (!empty($_POST["voornaam"])      &&
        !empty($_POST["achternaam"])    &&
        !empty($_POST["wachtwoord"])    &&
        !empty($_POST["e-mail"])        &&  
        !empty($_POST["straat"])        &&
        !empty($_POST["huisnummer"])    &&
        !empty($_POST["stad"])          &&
        !empty($_POST["postcode"])      &&
        !empty($_POST["land"])          &&
        !empty($_POST["school"])        &&
        !empty($_POST["opleiding"])     &&
        !empty($_POST["geboortedatum"]) &&
        !empty($_POST["gamesoort"]))         
    {   
    $query="INSERT INTO `usergegevens` (`voornaam`,
                                        `tussenvoegsel`,
                                        `achternaam`, 
                                        `wachtwoord`, 
                                        `E-mail`,
                                        `gebruikersrol`,
                                        `straat`.
                                        `huisnummer`,
                                        `stad`,
                                        `postcode`,
                                        `land`,
                                        `telefoonnummer`,
                                        `mobiel`,
                                        `school`,
                                        `opleiding`,
                                        `geboortedatum`,
                                        `gamesoort`)
                                        VALUES 
                                        ('".safetext($_POST["voornaam"])."',
                                        '".safetext($_POST["tussenvoegsel"])."',
                                        '".safetext($_POST["achternaam"])."',
                                        '".safetext($_POST["wachtwoord"])."',
                                        '".safetext($_POST["e-mail"])."',
                                        '".safetext($_POST["straat"])."',
                                        '".safetext($_POST["huisnummer"])."',
                                        '".safetext($_POST["stad"])."',
                                        '".safetext($_POST["postcode"])."',
                                        '".safetext($_POST["land"])."',
                                        '".safetext($_POST["telefoonnummer"])."',
                                        '".safetext($_POST["mobiel"])."',
                                        '".safetext($_POST["school"])."',
                                        '".safetext($_POST["opleiding"])."',
                                        '".safetext($_POST["geboortedatum"])."',
                                        '".safetext($_POST["gamesoort"])."',
                                        'klant')";
                                        
                                        
        mysqli_query($db_connection, $query) or die ("query niet goed uitgevoerd"); 
        
        echo "Bedankt voor het registreren.<br>
             U word automatisch doorgestuurd naar de login pagina.
             <meta http-equiv='refresh' content='4;url=login.php' />";
    }
    else
    {
        echo "u heeft een van de velden niet ingevuld, u wordt automatisch teruggestuurd naar de registratie pagina.<br>
              <meta http-equiv='refresh' content='4;url=Persoonsgegevens.php' />";
    }


hier word dus de OR DIE uitgevoerd. hoe het kan is me een raadsel, alvast bedankt voor de hulp heren!

[ Voor 76% gewijzigd door jessy100 op 22-09-2011 20:04 ]


  • X_lawl_X
  • Registratie: September 2009
  • Laatst online: 11-09 16:13
Omdat je query niet klopt. Gebruik eens mysqli_error() om de fout te achterhalen.

  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
X_lawl_X schreef op donderdag 22 september 2011 @ 20:05:
Omdat je query niet klopt. Gebruik eens mysqli_error() om de fout te acherhalen.
sorry? waar moet ik die toepassen (sorry ben nog niet zo ervaren).

  • X_lawl_X
  • Registratie: September 2009
  • Laatst online: 11-09 16:13
Maak er or die(mysqli_error($db_connection)) van. Let wel op dat je dat zo niet in productiecode laat staan!

[ Voor 6% gewijzigd door X_lawl_X op 22-09-2011 20:08 ]


  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Doordat je geen foutafhandeling gebruikt, weet je niet waar het fout gaat. Maak dus een correcte foutafhandeling (en dat is dus niet met or die();) en vertel dan waar het spaak loopt, als het desondanks nog niet lukt.

Overigens wil je 17 velden in een record invoegen in de database, maar bij values heb je er maar 16. ;) Gebruikersrol neem je namelijk niet mee, als die niet instelbaar is, geef die dan in je DB een default value, hoef je hem niet op te geven.

[ Voor 37% gewijzigd door CH4OS op 22-09-2011 20:10 ]


  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
hmm als ik mysqli_error(); toepas krijg ik een parse error

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

jessy100 schreef op donderdag 22 september 2011 @ 20:10:
hmm als ik mysqli_error(); toepas krijg ik een parse error
Dan is mysqli waarschijnlijk niet geïnstalleerd. Probeer dus de gewone eens.

[ Voor 8% gewijzigd door CH4OS op 22-09-2011 20:11 ]


  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
hmm.. nu blijft de pagina blank, geen echo, geen parse error.

maar ik betwijfel dat het mijn qeury is. hij werkte voorheen ik heb alleen een aantal extra "gegevens" geadd die ingevuld moeten worden.

  • X_lawl_X
  • Registratie: September 2009
  • Laatst online: 11-09 16:13
CptChaos schreef op donderdag 22 september 2011 @ 20:10:
[...]
Dan is mysqli waarschijnlijk niet geïnstalleerd. Probeer dus de gewone eens.
Hij gebruikt wel mysqli_query. Anders moet hij daar ook mysql_query van maken.

  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
X_lawl_X schreef op donderdag 22 september 2011 @ 20:13:
[...]


Hij gebruikt wel mysqli_query. Anders moet hij daar ook mysql_query van maken.
ik heb wel mysqli

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

jessy100 schreef op donderdag 22 september 2011 @ 20:12:
hmm.. nu blijft de pagina blank, geen echo, geen parse error.
Zet je error reporting eens op E_ALL dan. ;)
maar ik betwijfel dat het mijn qeury is. hij werkte voorheen ik heb alleen een aantal extra "gegevens" geadd die ingevuld moeten worden.
Je wil 17 velden in een record inserten, maar uiteindelijk geef je 16 variabelen. Wat ik overigens al eerder aankaartte: CptChaos in "query word niet (goed) uitgevoerd"

[ Voor 11% gewijzigd door CH4OS op 22-09-2011 20:16 ]


  • Noodels
  • Registratie: Februari 2004
  • Niet online
Je mist niet toevallig de gebruikersrol die nu gevult wordt door $_POST["straat"]?

  • DolleDries
  • Registratie: Oktober 2000
  • Laatst online: 16-07 12:27
In de query heb je bij het opgeven van de kolomen een punt achter 'straat' ipv een komma.
Misschien dat dit helpt (als in SQL syntax idd niet correct ;-)

  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
DolleDries schreef op donderdag 22 september 2011 @ 20:17:
In de query heb je bij het opgeven van de kolomen een punt achter 'straat' ipv een komma.
Misschien dat dit helpt (als in SQL syntax idd niet correct ;-)
ja, de punt is een komma en die gebruikersrol staat nu op de juiste posititie.

en hij werkt!! top. (wel een stomme fout) maar bedankt voor de snelle en duidelijke hulp heren!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Ik heb hem al eerder gezegd, maar wil het toch nogmaals op het hart drukken: gebruik een juiste foutafhandeling. Daarmee krijg je zelf namelijk ook al een hele boel debug informatie. Daarmee had je namelijk jouw fout ook in een mum van tijd kunnen vinden.

En nee, met een or die (mysql_error()); heb je geen mooie foutafhandeling.

[ Voor 13% gewijzigd door CH4OS op 22-09-2011 20:28 ]


  • jessy100
  • Registratie: November 2010
  • Laatst online: 15:24
CptChaos schreef op donderdag 22 september 2011 @ 20:28:
Ik heb hem al eerder gezegd, maar wil het toch nogmaals op het hart drukken: gebruik een juiste foutafhandeling. Daarmee krijg je zelf namelijk ook al een hele boel debug informatie. Daarmee had je namelijk jouw fout ook in een mum van tijd kunnen vinden.

En nee, met een or die (mysql_error()); heb je geen mooie foutafhandeling.
ok :P ik heb nog niet echt een manier van foutafhandeling geleerd maar ik zal er eens achteraan gaan.

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Nofi, maar ga dan ook achter het veilig opslaan van wachtwoorden, NAWT gegevens, fatsoenlijke validatie van input, validatie van emailadressen of uberhaupt een algemene cursus PHP aan.

Met je huidige kennis zou je nog niet mensen om NAWT of wachtwoorden mogen vragen.

[ Voor 7% gewijzigd door Voutloos op 22-09-2011 21:03 ]

{signature}


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 10:03

Creepy

Tactical Espionage Splatterer

Goed leren debuggen dus en betere foutafhandeling gebruiken ;). Je topic stond ook nog eens op de verkeerde plek. Dus let daar aub in de toekomst op. Dat staat overigens gewoon uitgelegd in Het algemeen beleid #quickstart en Waar hoort mijn topic?.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.