Hoi,

Waarom word in dit script de verification code niet geprint?


if(($valcom == 'yes') && ($fieldcom == 'yes') && ($passcom == 'yes') && ($gendercom == 'yes') && ($usercom1 == 'yes') && ($usercom == 'yes') && ($passcom2 == 'yes') && ($emailcom == 'yes') && ($userun == 'yes') && ($emailun == 'yes') && ($banned == 'no') && ($banned1 == 'no')){

mysql_query("insert into userdb (id, username, email, password, ipaddress, energy, verifycode, verified, referrer, yco, xco, gender, race, status) VALUES ('','".$_POST['username']."','".$_POST['email']."','".$_POST['password']."','$ip','150','$verifycode','N','".$_POST['refferer']."','0','0','".$_POST['gender']."','Ghost','loser')")or die(mysql_error());
	
	$repl = htmlspecialchars($_POST['username']);
        $repl = eregi_replace("admin","loser",$repl);
	echo "<br><b>Success:</b> Character $username created. You will be receiving an e-mail shortly containing a verification id.  When you receive that, please log in <a href=verify.php>here</a>. If you do not receive the email within 5 minutes, check your Junk Mail folders.<br>
	If you are using hotmail: Your verification code is $verifycode.";

$verifycode = rand(10000,90000);
Ergens in je zeer uitgebreide voorwaarden zal er eentje false zijn.
zet eens je $verifycode = rand(10000,90000); juist onder de mysql query
Misschien moet je

$verifycode = rand(10000,90000); 


eerst de variable aanmaken voordat je de query start?

En is dit je eigen code?
je moet wel eerst connecten met de database voordat je een query gebruikt..
dat doe je hiermee:

<?php
$server = "localhost";
$gebruiker = "dbgebruiker";
$wachtwoord = "dbpass";
$db = "dbname";
$connectie = mysql_connect($server,$gebruiker,$wachtwoord)
or die ("Kon niet connecten met de server");
mysql_select_db($db,$connectie)
or die ("Kon de database niet selecteren");
?>
Omdat je 'm eerst echo't en dan pas maakt?
Het lijkt erook op dat de verificatie-code ook niet in de database wordt weggeschreven. Controleer dit ook even.

Verder is het gebruikersvriendelijker om een url in de email mee te sturen waar men op kan klikken om het account te activeren. Gebruik bv. de md5() (of sha1() ) van het emailadres met een datum om een redelijk unieke code te genereren. Voorbeeldje van de url die je aanmaakt: www.mijnpagina.nl/activate.php?code=2a7214e489c23a2637a82a7ad901f541

Op de pagina activate.php lees je met $_GET['code'] de url weer uit en vergelijk je met de code die in de database staat.

Succes!
Dank jullie wel voor het snelle en geweldige andwoord. De fout zat inderdaad in dat ik 'm eerst echo't en dan pas maakte. Dat werkt nu perfect.

Alleen waarom weet ik niet maar bij hotmail gevruikers komt de mail nooit aan :S. Weet iemand hoe je kan zorgen dat dit wel gebeurt?
Sorry ik kan het niet vinden.. :(.

En weet iemand wat er hoer fout aan is?

rss.php

<?php 
header("Content-Type: application/xml; charset=UTF-8"); 

// laad de database connectie
$db = mysql_connect("***", "***", "*") or  Die("I cannot connect to the mysql server because: " . mysql_error());
mysql_select_db("*") or Die("DB Error !");


    // laad de 5 laatst toegevoegde artikelen uit de database
    $sql = mysql_query("SELECT id,username,userid,update1 FROM updates ORDER BY id DESC LIMIT 5");

// plaats rss informatie
echo '<rss version="2.0"> 
<channel> 
<title>RSS FEED</title> 
<link>http://crimewar.gamecoll.com/game/rss.php</link> 
<description>Wargame</description> 
<language>en</language>'; 

// laad de artikelen uit de database
while($rss_feed = mysql_fetch_assoc($sql)) 
{ 
// filter de extra slashes
$artikel = stripslashes($rss_feed['update1']);

// zet alle html karakters om in leesbare tekens
$artikel = htmlspecialchars($artikel); 
 
// plaats de artikelen
echo("<item>\n"); 
echo("<title>".$rss_feed['id']."</title>\n"); 
echo("<link>http://crimewar.gamecoll.com/game</link>\n"); 
echo("<description>".$artikel."</description>\n"); 
echo("</item>\n"); 
} 

// sluit de rss informatie 
echo("</channel>\n"); 
echo("</rss>");
?> 

Reageren