Archief - PHP: Registratiepagina

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

geebaby

Legacy Member
Beste mensen,

ik ben bezig met php een beetje onder de knie te krijgen en was bezig met een paginatje te maken waar mensen kunnen inloggen. Nu zit ik met een error die ik maar niet opgelost krijg. Zou er mij iemand kunnen helpen?

thx
http://www.barloke.be/andy/badminton/register.php

De fout zit volgens mij hier :

Code:
$username = $_POST["username"];
	$wachtwoord = $_POST["password"];
	$query = "SELECT * from users WHERE username = '$username';";
	$result = mysql_query($db, $query) or die ("FOUT: " . 
        mysql_last_error());
	if (mysql_num_rows($result) > 0) {
		// username is al aanwezig in de database, foutmelding tonen
		$tekst = "Deze username (<b>$username</b>) bestaat al\n.
		<a href=\"" . $_SERVER["PHP_SELF"] ."\">Opnieuw registreren</
		a>\n";
		die($tekst);
Moest iemand mij kunnen helpen? tzou vree sjiek zijn

thx

DarkBone

Legacy Member
$result = mysql_query($query, $db) or die ("FOUT: " .
mysql_error());

Mulle

Legacy Member
PHP:
$query = "SELECT * from users WHERE username = '$username';";
Vervangen door:
PHP:
$query = "SELECT * from users WHERE username = '".$username."'";

Denk dat er een ";" te veel staat.

Fr3aK

Legacy Member
Mulle zei:
PHP:
$query = "SELECT * from users WHERE username = '$username';";
Vervangen door:
PHP:
$query = "SELECT * from users WHERE username = '".$username."'";

Denk dat er een ";" te veel staat.
Ge hoeft da ni te vervangen ze, da werkt ook volgens het eerste principe ;)

Col.Kurtz

Legacy Member
Veel zin heeft het niet om alles uit de tabel 'users' te selecteren waar de username gelijk is aan de user input

oplossing :

PHP:
if (mysql_result(mysql_query("select count(1) from users where username='$username'"),0)) {
	// in gebruik
} else {
	// doorgaan
}

geebaby

Legacy Member
Beste mensjes

alleszinds bedankt voor jullie reacties, maar voorlopig werkt nog nix.

dit is de volledige code van de pagina

Code:
<html>
<head>
	<title>Registreren</title>
<?php
include("inc_connect_mysql.php");
if (!empty($_POST)){
	//Eerst controleren of inlognaam al bestaat in database
	$username = $_POST["username"];
	$wachtwoord = $_POST["password"];
	$query = "SELECT * from users WHERE username = '$username';";
	$result = mysql_query($db, $query) or die ("FOUT: " . 
        mysql_last_error());
	if (mysql_num_rows($result) > 0) {
		// username is al aanwezig in de database, foutmelding tonen
		$tekst = "Deze username (<b>$username</b>) bestaat al\n.
		<a href=\"" . $_SERVER["PHP_SELF"] ."\">Opnieuw registreren</
		a>\n";
		die($tekst);
	}else{
		// OK, Query opbouwen
		$query="INSERT INTO users (username, wachtwoord)";
		$query .="VALUES ('$username', '$wachtwoord');";
		$result = mysql_query($db, $query) or die ("fout: " .
                mysql_last_error());
		$tekst = "Bedankt voor uw aanmelding.<br>
		U kunt nu <a href=\"login.php\">inloggen</a>";
		die ($tekst);
	}
}
?>
</head>
<body>
<table>
  <tr>
    <td class="zo">
      Registreren
    </td>
  </tr>
  <tr>
    <td class="zo">
      Welkom, u kunt zich hier registreren. 
    </td>
  </tr>
</table>
<form name="form1" method="post" action="<?php
echo($SERVER["PHP_SELF"]);?>">
Gebruikersnaam: <input name="username" size="12" type="text"><br>
wachtwoord: <input name="password" size="12" type="password"><br>
<input type="submit" name="submit" value="Registreren">
<input name="reset" type="reset" value="Leegmaken">
</form>
</body>
</html>

en dit heeft hij als fout :
Code:
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/barloke/pub_html/andy/badminton/register.php on line 11

Fatal error: Call to undefined function: mysql_last_error() in /home/barloke/pub_html/andy/badminton/register.php on line 12

Dus moest er iemand een idee hebben waar het kan zitten? plzzz want kzit echt in de shit...

thx

servi

Legacy Member
vervang mysql_last_error door mysql_error
en je verbind toch met de mysql-server hoop ik ?

geebaby

Legacy Member
servi zei:
je verbind toch met de mysql-server hoop ik ?

jaja ik verbind met mijn mysql-server hoor :) das geen probleem...

Kheb da dus veranderd en nu krijg ik dit :

Code:
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/barloke/pub_html/andy/badminton/register.php on line 11
FOUT:

geebaby

Legacy Member
De opzet hiervan is om op lange termijn, een webbased game zoals hattrick te maken maar dan voor badminton...

Moest iemand zich geroepen voelen om hiermee mee te helpen. U bent altijd meer dan welkom :) aangezien ik nog maar net bezig ben met php en het nog allemaal een beke moet leren...

greetzzz

geebaby

Legacy Member
Code:
$result = mysql_query($db, $query) or die ("FOUT: " . 
        mysql_error());
	if (mysql_num_rows($result) > 0) {

Alstublieftere

servi

Legacy Member
dan zit er een fout in je sql-query of krijg je geen rijen terug.


edit : dit is de juiste volgorde :

mysql_query( $query,$db)

geebaby

Legacy Member
Okay nu krijg ik volgende error,
Code:
FOUT: Table 'barloke_forum.users' doesn't exist

Nu ik weet da die nie bestaat, het moet zijn barloke_forum maar hoe komt het dat hij die .users erbij zet?

sorry dak zo'n noob vragen stel ze maar mijn php kennis reikt nog niet zo ver dermee..

alvast bedankt

servi

Legacy Member
lees uw code

$query = "SELECT * from users WHERE username = '$username';";



9/10 verbind je trouwens met je mysql_server waar je als databank-naam barloke_forum opgeeft.

Nullius

Legacy Member
Ik stel voor dat je eens tutorial leest over mysql ;)
barloke_forum is uw database-naam.
Een database bevat verschillende tabellen.
Je moet dus eerst een tabel 'users' aanmaken etc ... :)

geebaby

Legacy Member
Code:
9/10 verbind je trouwens met je mysql_server waar je als databank-naam barloke_forum opgeeft

ja da is zo, nu om goed te zijn moet ik dan : $query = "SELECT * from users WHERE username = '$username';";

users veranderen naar barloke_forum? of wat?

want nu weet ik nie echt meer wak moe doen?

geebaby

Legacy Member
Nullius zei:
Ik stel voor dat je eens tutorial leest over mysql ;)
barloke_forum is uw database-naam.
Een database bevat verschillende tabellen.
Je moet dus eerst een tabel 'users' aanmaken etc ... :)

ge zijt e schat en idd :) zou best nog een boek kopen van mysql database ook want mijn kennis hierover is zeer gelimiteerd ;) mercikes e

khoop dak zo nu mijn plan e beke ga kunnen trekken, alleszinds vreet bedankt e

Spacy2003

Legacy Member
Kijk mysql zit zo in elkaar:
Allemaal databases waarbij je connect bv mysql_forum
Die database bestaat uit tabellen bv users

Zie het als 1 excel bestand met daar in verschillende spreadsheets.
Tabellen bestaan dan weer uit rijen en kolommen.

Een juiste mysql connect zit zo in elkaar:
Connect met mysql
Connect met de juiste DB

In uw query's spreek je de gewenste tabel uit uw DB en eventueel welke rij/kolom.

Hierbij kom je wel wat verder. ;)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan