hoi,

ik ben bezig een members gedeelte in mijn site te maken..
ik heb bij het aanmelden.php gedeelte een fout melding..

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /www/htdocs/joswgm/members/aanmelden.php on line 62
No Database Selected

ik heb een data gedeelte gemaakt

CREATE TABLE members (
  memberid int(11) unsigned NOT NULL auto_increment,
  gebruikersnaam varchar(100) default 0,
  wachtwoord varchar(100) default 0,
  naam varchar(250) default 0,
  email varchar(100) default 0,
  homepage varchar(100) default 0,
  geboortedatum varchar(10) default 0,
  woonplaats varchar(75) default 0,
  geslacht varchar(12) default 0,
  relatie int(1) default 0,
  hobbys blob,
  favodrankje varchar(100) default 0,
  favoartiest varchar(100) default 0,
  favofilm varchar(100) default 0,
  bekeken int(10) unsigned default 0,
  geactiveerd char(12) default 0,
  pm char(1) default 0,
  blockpm blob,
  PRIMARY KEY  (memberid)
) TYPE=MyISAM;

CREATE TABLE priveberichten (
  id int(11) unsigned NOT NULL auto_increment,
  onderwerp varchar(100) default 0,
  van int(11) unsigned default 0,
  naar int(10) unsigned default 0,
  datum varchar(22) default 0,
  bericht blob,
  ip varchar(15) default 0,
  gelezen char(1) default 0,
  PRIMARY KEY  (id)
) TYPE=MyISAM;


en een config.php

[PHP]<?

$host = "localhost";
$user = "****";
$pass = "****";
$db = "members";

mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($db);

// Webmaster gegevens
$webmaster_email = "[email protected]";
$webmaster_url = "http://www.joswgm.nl";;

// Waar het script zich bevindt ( Zonder / op het einde )
$script_url = "http://www.joswgm.nl/members";;

// Maximaal aantal PB's in een inbox
$maxpm = 50;

// Accounts activeren
// 0 = Zelf activeren ( d.m.v PHPMyAdmin/MySql Front )
// 1 = Activeringsmail sturen
// 2 = Automatisch activeren
$actmail = 2;

?>[/php]

en een aanmelden.php
Hierin staat die mysql_num_rows():

[PHP]
<?
require("config.php");

// Verwijder deze comment en de onderstaande regel als je een eigen stylesheet gebruikt...
echo "<link rel=\"stylesheet\" content=\"text/css\" href=\"style.css\">";

if(!$submit){
?>
Velden met een * zijn verplicht...
<form method="POST" action="<? echo $PHP_SELF ?>">
<input type="hidden" name="submit" value="1">
Naam:<br>
<input type="text" name="naam" size="30"> *<br>
Email adres:<br>
<input type="text" name="email" size="30"> *<br>
Homepage:<br>
<input type="text" name="homepage" size="30" value="http://"><br>
Woonplaats:<br>
<input type="text" name="woonplaats" size="30"><br>
Geboortedatum ( dd-mm-jjjj ):<br>
<input type="text" name="geb1" size="2" maxlength="2"> -
<input type="text" name="geb2" size="2" maxlength="2"> -
<input type="text" name="geb3" size="4" maxlength="4"><br>
Hobby's:<br>
<textarea name="hobbys" rows="3"></textarea><br>
Favo drankje(s):<br>
<input type="text" name="drank"><br>
Favo artiest(en):<br>
<input type="text" name="artiest"><br>
Favo film:<br>
<input type="text" name="film"><br>
Geslacht:<br>
<select size="1" name="geslacht">
<option value="Man">Man</option>
<option value="Vrouw">Vrouw</option>
<option value="Weet ik niet">Weet ik niet</option>
</select><br>
Relatie:<br>
<select size="1" name="relatie">
<option value="1">Ja</option>
<option value="0">Nee</option>
<option value="2">Binnenkort</option>
</select><br>
Privé- berichten:<br>
<select size="1" name="pm">
<option value="1">Aan</option>
<option value="0">Uit</option>
</select><br>
<br>
Gewenste gebruikersnaam:<br>
<input type="text" name="gebruikersnaam" size="25"> *<br>
Wachtwoord:<br>
<input type="password" name="wachtwoord" size="12" maxlength="12"> *<br>
Wachtwoord [ bevestig ]:<br>
<input type="password" name="wachtwoord2" size="12" maxlength="12"> *<br>
<input type="submit" value="Aanmelden"> <input type="reset" value="Wis velden"></p>
</form>
<?
}
else{
$query = mysql_query("SELECT * FROM members WHERE gebruikersnaam = '$gebruikersnaam'");
$result = mysql_num_rows($query);

if($result){
?>

Deze gebruikersnaam is al in gebruik<br><br>
<a href="javascript:history.go(-1)">Ga terug</a>

<?
}
else{
if($naam AND $email AND $gebruikersnaam AND $gebruikersnaam){

if($wachtwoord!=$wachtwoord2){
echo "De wachtwoorden zijn niet gelijkt aan elkaar";
}
else{
$geboortedatum = "$geb1-$geb2-$geb3";

$tekens=array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$activeringscode;
for($c = 0; $c < 12; $c++){
srand((double)microtime() * 100000000000000);
$pass = $tekens[rand(0, 62)];
$activeringscode=$activeringscode.$pass;
}

if($actmail=="1"){
$activeringscode = 0;
}
elseif($actmail=="2"){
$activeringscode = 1;
}

mysql_query("INSERT INTO members (gebruikersnaam,wachtwoord,naam,email,homepage,geboortedatum,woonplaats,favodrankje,favoartiest,favofilm,hobbys,geslacht,relatie,geactiveerd,pm) VALUES ('$gebruikersnaam','$wachtwoord','$naam','$email','$homepage','$geboortedatum','$woonplaats', '$drank', '$artiest','$film','$hobbys','$geslacht','$relatie','$activeringscode','$pm')") or die(mysql_error());

$bericht = "Via onze website heb jij (als het goed is) een aanmeldingsformulier ingevuld waarmee je een lid van onze
website wordt, als dit niet het geval is kun je dit mailtje het beste verwijderen.\n\nAls je je wel wilt aanmelden voor een
account op onze website moet je op de onderstaande url klikken om je account te activeren:\n\n
<a href=\"$script_url/activeer.php?activate=$activeringscode\">$script_url/activeer.php?activate=$activeringscode</a>\n\nMet vriendelijke groet
Webmaster $webmaster_url";

if($actmail=="1"){
mail("$webmaster_email","Activeer nu je account $naam !","$bericht");
echo "De aanmelding is succesvol gelukt, er word nu een mailtje verstuurd aan <b>$email</b> waarin de activerings url staat...";
}
elseif($actmail=="2"){
echo "Je account is geactiveerd, je kunt nu inloggen...";
}
else{
echo "De aanmelding is gelukt, het is nu aan de webmaster om te beslissen of hij/zij je accepteerd als member van deze website...";
}
}
}
else{
?>

Je hebt niet alle verplichte velden ingevuld...<br><br>
<a href="javascript:history.go(-1)">Ga terug</a>

<?
}
}
}
?>[/PHP]


wie oh wie kan me helpen...

alvast bedankt
$host = "localhost";
$user = "****";
$pass = "****";
$db = "members";

mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($db);

Is members de naam van je DATABASE of van je TABEL?
De functie mysql_query geeft geen resource terug dit kan betekenen dan je query fout is.

vervang dit:
<?php
$query = mysql_query("SELECT * FROM members WHERE gebruikersnaam = '$gebruikersnaam'");
$result = mysql_num_rows($query);
?>

eens door:

<?php
$result = null;

if( ($query = mysql_query("SELECT * FROM members WHERE gebruikersnaam = '$gebruikersnaam'")) !== false )
{
$result = mysql_num_rows($query);
}

?>

Je zou eventueel met de functies mysql_error en mysql_errno de fout kunnen laten zien.
[php]$db = "members"; [/php]is veranderd in
[php]$db = "joswgm";[/php]

joswgm is mijn Database

en werkt het nu dan wel? nu de database is verandert? Want die fout gaf die eerst, als het nu nog niet werkt, krijg je als het goed is een andere foutmelding.
Als jij dit script zelf hebt gemaakt.
Heet jij dan ook : Dennis van den Hout??

Gedownload op anouksweb he?:P:P
klopt.. heb ik gedownload van anouksweb...

is geen schande toch??? ;-)

ik ben er trouwens uit.. het werkt perfect.. iedereen bedankt die mij geholpen heeft...
Neej het is geen schande. Maar het ik wel zo netjes om de copyright van de maker te accepteren.

In plaats van te zeggen dat jij ut gemaakt hebt;)

Roy schreef op 30.12.2005 17:16

ik ben er trouwens uit.. het werkt perfect.. iedereen bedankt die mij geholpen heeft...


Das mooi;)

Reageren