Problemen met Insert in MYSQL

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jeroen

Jeroen

04/01/2008 15:30:00
Quote Anchor link
Yo ..
Ik ben weer eens bezig geweest om te oefenen met mysql en daarom bezig geweest met de INSERT functie..

Doel van me is om uit eindelijk om zelf een inlog script te maken en daarom ben ik nu bezig met het registreren daarbij.
De eerste 2 pagina's gaan goed (als ik die er ook bij moet posten doe ik dat nog wel) maar dan kom je bij pagina 3, de pagina die alles in de database moet zetten en dan heb ik last van die interne error
Ja, ik heb gekeken naar WAMP en die USB maar
1) WAMP kan niet op deze laptop omdat laptop van mn vaders laptop is.
2) USB-stick ben ik nog aan het zoeken (kwijt.)

Zouden jullie misschien een snelle blik kunnen werpen op deze pagina? :)
Alvast bedankt !! :DD
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$db
= mysql_connect("localhost", "*******", "*******") or die("Kan niet verbinden ".mysql_error());
mysql_select_db("*******", $db);
?>

<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
?>

<?php
$sql
= "INSERT INTO gebruikers (spelernaam, wachtwoord, dag, maand, jaar, land, provincie, plaats, straatennummer, postcode, naam, dorpnaam, gebied, email, msn, site)
VALUES ('"
.$_POST["spelernaam"]."', '".$_POST["wachtwoord"]."', '".$_POST["dag"]."', '".$_POST["maand"]."', '".$_POST["jaar"]."', '".$_POST["land"]."', '".$_POST["provincie"]."', '".$_POST["plaats"]."', '".$_POST["straatennummer"]."', '".$_POST["postcode"]."', '".$_POST["naam"]."', '".$_POST["dorpnaam"]."', '".$_POST["gebied"]."', '".$_POST["email"]."', '".$_POST["msn"]."', '".$_POST["site"].")";

if (!mysql_query($sql)) {
Helaas, het registreren is niet gelukt!<br>
Probeer het opnieuw!

}
else {
echo "U bent geregistreerd en kunt nu gelijk inloggen!<br><b>Naam: ".$_POST["naam"]."</b><br><b>Wachtwoord: ".$_POST["wachtwoord"]."</b>";
}

?>
 
PHP hulp

PHP hulp

24/12/2024 04:07:32
 
Bjorn Vennema

Bjorn Vennema

04/01/2008 17:23:00
Quote Anchor link
Je mist een ' aan het einde van je sql.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$sql
= "INSERT INTO gebruikers (spelernaam, wachtwoord, dag, maand, jaar, land, provincie, plaats, straatennummer, postcode, naam, dorpnaam, gebied, email, msn, site)
VALUES ('"
.$_POST["spelernaam"]."', '".$_POST["wachtwoord"]."', '".$_POST["dag"]."', '".$_POST["maand"]."', '".$_POST["jaar"]."', '".$_POST["land"]."', '".$_POST["provincie"]."', '".$_POST["plaats"]."', '".$_POST["straatennummer"]."', '".$_POST["postcode"]."', '".$_POST["naam"]."', '".$_POST["dorpnaam"]."', '".$_POST["gebied"]."', '".$_POST["email"]."', '".$_POST["msn"]."', '".$_POST["site"]."')";
?>


En moet het stukje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if (!mysql_query($sql)) {
Helaas, het registreren is niet gelukt!<br>
Probeer het opnieuw!
?>


Niet in een echo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
if (!mysql_query($sql)) {
echo "Helaas, het registreren is niet gelukt!<br>Probeer het opnieuw!";
?>


Ik hoop dat dit werkt.
 
Frank -

Frank -

04/01/2008 17:34:00
Quote Anchor link
Onleesbare code en bugs... Zoals gebruikelijk gaan deze hand in hand over het scherm!
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);

$db = mysql_connect("localhost", "*******", "*******") or die("Kan niet verbinden ".mysql_error());
mysql_select_db("*******", $db);

$sql = "
    INSERT INTO
        gebruikers (
            spelernaam,
            wachtwoord,
            dag, maand, jaar,
            land,
            provincie,
            plaats,
            straatennummer,
            postcode,
            naam,
            dorpnaam,
            gebied,
            email,
            msn,
            site
        )
VALUES (
    '"
.mysql_real_escape_string($_POST["spelernaam"])."',
    '"
.$_POST["wachtwoord"]."',
    '"
.$_POST["dag"]."',
    '"
.$_POST["maand"]."',
    '"
.$_POST["jaar"]."',
    '"
.$_POST["land"]."',
    '"
.$_POST["provincie"]."',
    '"
.$_POST["plaats"]."',
    '"
.$_POST["straatennummer"]."',
    '"
.$_POST["postcode"]."',
    '"
.$_POST["naam"]."',
    '"
.$_POST["dorpnaam"]."',
    '"
.$_POST["gebied"]."',
    '"
.$_POST["email"]."',
    '"
.$_POST["msn"]."',
    '"
.$_POST["site"]."'
)"
;

if (!mysql_query($sql)) {
    echo 'Helaas, het registreren is niet gelukt!<br>Probeer het opnieuw! '.mysql_error(); // met de echte foutmelding, anders snap je er niks van.

} else {
    echo "U bent geregistreerd en kunt nu gelijk inloggen!<br><b>Naam: ".$_POST["naam"]."</b><br><b>Wachtwoord: ".$_POST["wachtwoord"]."</b>";
}

?>

De 3 velden die jij gebruikt voor 1 datum, ga je natuurlijk samenvoegen tot 1 veld van het datatype DATE, anders kun je niks meer met de datum. De datum is dan geen datum, maar een hoopje ellende.

Verder mag je bij iedere POST-variabele in de query nog even de functie mysql_real_escape_string() toepassen, ik ben te lui om het overal aan te passen.

En de wachtwoorden, wil je die niet wat veiliger op gaan slaan? Bv. met md5 of sha1.
 
Jeroen

Jeroen

04/01/2008 19:23:00
Quote Anchor link
Als iemand uit kan leggen hoe md5 of sha1 ofzo werkt?
Of als er een tut over bestaat?

En hij geeft nu geen interne error meer, maar er blijfen notices komen en kan zich niet registreren.
Hij heeft 3 pagina's:
test.php (Gegevens invullen)
test_form.php (Gegevens controleren door php/mysql en gebruiker zelf)
test_form2.php (Invullen in de Database en weergeven of er wat mis is gegaan)
Iemand enig idee wat er fout kan zijn?

@pgFrank:
Als ik wist hoe ik datum samen moest voegen, zou ik het wel doen.
Maarja, het is toch alleen een geboortedatum dus het is ook zo goed als nutteloos ;)
 
Klaasjan Boven

Klaasjan Boven

04/01/2008 19:32:00
Quote Anchor link
Jeroen schreef op 04.01.2008 19:23:
Als iemand uit kan leggen hoe md5 of sha1 ofzo werkt?
.....t is toch alleen een geboortedatum dus het is ook zo goed als nutteloos ;).....


Daarmee kan je bijv wel prima iemands leeftijd berekenen als je de datum goed registreert.
 
Jeroen

Jeroen

04/01/2008 19:33:00
Quote Anchor link
Oke, dat is waar..
Maar dan zou ik nog niet weten hoe ik van die drie 1 maak om vervolgens in de database te stoppen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.