Hallo, hulp nodig met registratie van mijn site.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tim Lutgens

Tim Lutgens

20/06/2014 17:29:44
Quote Anchor link
Ik heb in dit code mijn eige DB info ingevuld maar als ik het dan probeer op mijn site te registreren dan slaat die naam en wachtwoord niet op in DB maar hij creerd wel een regel zonder naam en wachtwoord.
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
<?php
if(isset($_POST["submit"])){

if(!empty($_POST['user']) && !empty($_POST['pass'])) {
    $user=$_POST['user'];
    $pass=$_POST['pass'];

    $con=mysql_connect('localhost','root','') or die(mysql_error());
    mysql_select_db('user_registration') or die("cannot select DB");

    $query=mysql_query("SELECT * FROM login WHERE username='".$user."'");
    $numrows=mysql_num_rows($query);
    if($numrows==0)
    {

    $sql="INSERT INTO login(username,password) VALUES('$user','$pass')";

    $result=mysql_query($sql);


    if($result){
    echo "Account Successfully Created";
    }
else {
    echo "Failure!";
    }

    }
else {
    echo "That username already exists! Please try again with another.";
    }

}
else {
    echo "All fields are required!";
}
}

?>

- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 20/06/2014 17:48:31 door - Ariën -
 
PHP hulp

PHP hulp

17/11/2024 00:49:11
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/06/2014 17:49:00
Quote Anchor link
Dan zijn $user en $pass dus leeg. Misschien gebruik je de verkeerde namen?

doe anders eens
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php print_r($_POST); ?>
 
- Ariën  -
Beheerder

- Ariën -

20/06/2014 17:53:00
Quote Anchor link
Even een paar tips om je script te verbeteren:
- Gebruik if($_SERVER['REQUEST_METHOD']=="POST") { om te controleren of je formulier verstuurd is.
- Pas goede foutafhandeling toe op je query, zie ook deze voorbeelden in deze 'boiler-template'
- Gebruik bij voorkeur de functies van MySQLi, omdat de MySQL-functies (niet de database) aan de kant zullen gaan in de volgende versies.
- Kopiëer geen variabelen van elkaar, zoals $user = $_POST['user'], omdat je ten allertijde al beschikt over $_POST['user'].
- Controleer de input van je query met mysqli_real_escape_string() om hacking d.m.v. SQL-injection te voorkomen.
 
Pipo Clown

Pipo Clown

20/06/2014 18:11:56
Quote Anchor link
Kijk even naar de kleuren van je code.

Bij de select query is $user blauw weer gegeven, in de insert query is $user rood weer gegeven.
Hier kun je al uit op maken dat één van de twee niet goed is.

Wanneer ik het goed in schat gaar er iets niet goed met het gebruik van de (dubbel) quotes in de insert query.
 
- SanThe -

- SanThe -

20/06/2014 18:23:04
Quote Anchor link
Pipo Clown op 20/06/2014 18:11:56:
Bij de select query is $user blauw weer gegeven, in de insert query is $user rood weer gegeven.
Hier kun je al uit op maken dat één van de twee niet goed is.


En toch zijn ze beiden technisch goed.
Niet consequent dat wel.
 
Erwin H

Erwin H

20/06/2014 18:24:54
Quote Anchor link
Helaas Pipo, maar dat klopt gewoon. In de select query is de variabel buiten quotes gehaald (en dus blauw), in de insert query staat de variabele binnen quotes (en derhalve rood). Beide zijn correct.
 



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.