Probleem met inlogpagina

Status
Niet open voor verdere reacties.
$inlogquery is een string, geen handle van de MySQL database.

Je zult dus mysql_query() op $inlogquery moeten toepassen :)

En welkom op Helpmij ;)
 
dus dan wordt het zo:

PHP:
mysql_connect($dbhost,$dbuser,$dbpass) or die(mysql_error());
mysql_select_db($dbname) or die(mysql_error());
$inlogquery =
"SELECT userid FROM membersysteem
WHERE username = '".$_POST['username']."'
AND email = '".$_POST['email']."'
AND password = '".md5($_POST['password'])."'"; 

$numrows = mysql_num_rows($inlogquery);
if ($numrows == "0")
{
echo ("U heeft een verkeerd wachtwoord/username/e-mail combinatie opgegeven!<br>");
echo ("<a href=\"java script:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>"); 
}
else
{ // dan ga je verder.
 
ok, ik ga het proberen

ik ben nog maar een beginneling op PHP-gebied, dus daarom stelde ik deze vraag ;)
en ik zal het stuk code even gaan testen:thumb:

ik laat het wel horen, als het niet lukt!

groeten,
Andreas
 
lukt niet!

nu heb ik deze code:
<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<?php
error_reporting(E_ALL);
$sitenaam = "Mijn site"; //jouw site naam
?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Log hier in voor mijn website <?php echo($sitenaam); ?>!</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
body,td,th {
font-family: Tahoma;
color: #FFFFFF;
font-size: 16px;
}
a:link {
color: #FF0000;
text-decoration: none;
}
a:visited {
text-decoration: none;
color: #00FF00;
}
a:hover {
text-decoration: underline;
color: #FFFF00;
}
a:active {
text-decoration: none;
}
.style1 {
color: #FFFF00;
font-family: Tahoma;
}
.style3 {
color: #00FF00;
font-family: Tahoma;
}
.style4 {color: #FFFFFF}
.style6 {color: #FFFFFF; font-family: Tahoma; }
-->
</style>
</head>
<body>
<?php
require("config.php");
if (isset($_POST['inloggen'])){
if (!trim($_POST['username']) OR !trim($_POST['email']) OR !trim($_POST['password'])){
echo ("U moet wel alle verplichte velden invullen...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$pwcheck1 = (strlen($_POST["password"])<6);
if($pwcheck1 == TRUE){
echo ("Het password dat u heeft ingevuld bestaat uit minder dan 6 tekens, dat mag niet...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$pwcheck2 = (strlen($_POST["password"])>16);
if($pwcheck2 == TRUE){
echo ("Het password dat u heeft ingevuld bestaat uit meer dan 16 tekens, dat mag niet...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$mailvalid = eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*"
."@([a-z0-9]+([\.-][a-z0-9]{1,})+)*$",$email);
if($mailvalid == FALSE){
echo ("Het e-mailadres dat u heeft ingevuld is geen geldig e-mailadres...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$link = mysql_connect($dbhost,$dbuser,$dbpass) or die(mysql_error());
mysql_select_db($dbname, $link) or die(mysql_error());
$inlogquery =
"SELECT userid FROM membersysteem
WHERE username = '".$_POST['username']."'
AND email = '".$_POST['email']."'
AND password = '".md5($_POST['password'])."'";

$numrows = mysql_num_rows($inlogquery);
if ($numrows == "0")
{
echo ("U heeft een verkeerd wachtwoord/username/e-mail combinatie opgegeven!<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$gegevens = mysql_fetch_array($inlogquery);
$_SESSION['userid'] = $gegevens['userid'];

$query = mysql_query('UPDATE membersysteem SET times_loggedin = (times_loggedin + 1) WHERE userid = "'.$_SESSION['userid'].'"');
if($query == FALSE) // controlleer of de verbinding niet gelukt is
{
echo ("Verbinden met database is mislukt<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
}
}
}
}
}
}else{
?>
<table width="100%" border="2" cellpadding="0" cellspacing="2" bordercolor="#FF0000">
<tr>
<th scope="col"><span class="style1">Hier kun jij je inloggen...</span></th>
</tr>
</table>
<hr color="#003399" width="100%" size="5">
<form action="<?php echo($_SERVER["PHP_SELF"]);?>" name="inloggen" method="post">
<table width="61%" border="2" cellpadding="0" cellspacing="2" bordercolor="#FF0000">
<td width="69%"><input type="hidden" name="inloggen" value="1"></td>
<tr>
<td><span class="style4">Username:</span></td>
<td width="3%">*</td>
<td onMouseOver="this.style.backgroundColor='#00F000'" onMouseOut="this.style.backgroundColor='#660000'" width="28%"><input name="username" type ="text" size="30"></td>
</tr>
<tr>
<td><span class="style4">Password [Min. 6 tekens][Max. 16 tekens]:</span></td>
<td>*</td>
<td onMouseOver="this.style.backgroundColor='#00F000'" onMouseOut="this.style.backgroundColor='#660000'"><input name="password" type ="password" size="30"></td>
</tr>
<tr>
<td><span class="style4">Email:</span></td>
<td>*</td>
<td onMouseOver="this.style.backgroundColor='#00F000'" onMouseOut="this.style.backgroundColor='#660000'"><input name="email" type ="text" size="30"></td>
</tr>
</table>
<br>
<input type="submit" name="inloggen" value="Log in!">
<input name="wis" type="reset" id="wis" value="Wis alle velden!">
</form>
</body>
<?php
}
?>
</html>


en nu geeft hij deze errors nadat ik de gegevens heb ingevuld:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /data/members/paid/s/t/steeloxp.com/htdocs/www/****/login.php on line 87

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /data/members/paid/s/t/steeloxp.com/htdocs/www/****/login.php on line 94

sorry als je gek van mij wordt, maar help me a.u.b.:o
 
Ik weet niet of het veel zal uitmaken maar probeer dit eens

Vervang
PHP:
$inlogquery =
"SELECT userid FROM membersysteem
WHERE username = '".$_POST['username']."'
AND email = '".$_POST['email']."'
AND password = '".md5($_POST['password'])."'";
eens door:
PHP:
$password = md5($_POST['password']);
$inlogquery =
"SELECT userid FROM membersysteem
WHERE username = '$_POST[username]'
AND email = '$_POST[email]'
AND password=('$pw')";
 
Bedankt!

Hallo, het werkt eindelijk:thumb:
dit is de uiteindelijke code:
<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<?php
error_reporting(E_ALL);
$sitenaam = "Mijn site"; //jouw site naam
?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Log hier in voor mijn website <?php echo($sitenaam); ?>!</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
body,td,th {
font-family: Tahoma;
color: #FFFFFF;
font-size: 16px;
}
a:link {
color: #FF0000;
text-decoration: none;
}
a:visited {
text-decoration: none;
color: #00FF00;
}
a:hover {
text-decoration: underline;
color: #FFFF00;
}
a:active {
text-decoration: none;
}
.style1 {
color: #FFFF00;
font-family: Tahoma;
}
.style3 {
color: #00FF00;
font-family: Tahoma;
}
.style4 {color: #FFFFFF}
.style6 {color: #FFFFFF; font-family: Tahoma; }
-->
</style>
</head>
<body>
<?php
require("config.php");
if (isset($_POST['inloggen'])){
if (!trim($_POST['username']) OR !trim($_POST['email']) OR !trim($_POST['password'])){
echo ("U moet wel alle verplichte velden invullen...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$pwcheck1 = (strlen($_POST["password"])<6);
if($pwcheck1 == TRUE){
echo ("Het password dat u heeft ingevuld bestaat uit minder dan 6 tekens, dat mag niet...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$pwcheck2 = (strlen($_POST["password"])>16);
if($pwcheck2 == TRUE){
echo ("Het password dat u heeft ingevuld bestaat uit meer dan 16 tekens, dat mag niet...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
$mailvalid = eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*"
."@([a-z0-9]+([\.-][a-z0-9]{1,})+)*$",$email);
if($mailvalid == FALSE){
echo ("Het e-mailadres dat u heeft ingevuld is geen geldig e-mailadres...<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
else{
mysql_connect($dbhost,$dbuser,$dbpass) or die(mysql_error());
mysql_select_db($dbname) or die(mysql_error());
$inlogquery =
"SELECT userid FROM membersysteem
WHERE username = '".$_POST['username']."'
AND email = '".$_POST['email']."'
AND password = '".md5($_POST['password'])."'";
if(!$result = mysql_query($inlogquery))
{
die("Foutje bij query:<br />" . mysql_error());
}
else{
$gegevens = mysql_fetch_array($result);
$_SESSION['userid'] = $gegevens['userid'];

$query = mysql_query('UPDATE membersysteem SET times_loggedin = (times_loggedin + 1) WHERE userid = "'.$_SESSION['userid'].'"');
if($query == FALSE) // controlleer of de verbinding niet gelukt is
{
echo ("Verbinden met database is mislukt<br>");
echo ("<a href=\"javascript:history.go(-1)\">Klik hier om het nog een keer te proberen</a><br>");
}
}
}
}
}
}
}else{
?>
<table width="100%" border="2" cellpadding="0" cellspacing="2" bordercolor="#FF0000">
<tr>
<th scope="col"><span class="style1">Hier kun jij je inloggen...</span></th>
</tr>
</table>
<hr color="#003399" width="100%" size="5">
<form action="<?php echo($_SERVER["PHP_SELF"]);?>" name="inloggen" method="post">
<table width="61%" border="2" cellpadding="0" cellspacing="2" bordercolor="#FF0000">
<td width="69%"><input type="hidden" name="inloggen" value="1"></td>
<tr>
<td><span class="style4">Username:</span></td>
<td width="3%">*</td>
<td onMouseOver="this.style.backgroundColor='#00F000'" onMouseOut="this.style.backgroundColor='#660000'" width="28%"><input name="username" type ="text" size="30"></td>
</tr>
<tr>
<td><span class="style4">Password [Min. 6 tekens][Max. 16 tekens]:</span></td>
<td>*</td>
<td onMouseOver="this.style.backgroundColor='#00F000'" onMouseOut="this.style.backgroundColor='#660000'"><input name="password" type ="password" size="30"></td>
</tr>
<tr>
<td><span class="style4">Email:</span></td>
<td>*</td>
<td onMouseOver="this.style.backgroundColor='#00F000'" onMouseOut="this.style.backgroundColor='#660000'"><input name="email" type ="text" size="30"></td>
</tr>
</table>
<br>
<input type="submit" name="inloggen" value="Log in!">
<input name="wis" type="reset" id="wis" value="Wis alle velden!">
</form>
</body>
<?php
}
?>
</html>

ik had nog wat hulp gekregen van iemand anders, maar goed, toch hartstikke bedankt voor de moeite!:thumb:

Groeten
Andreas
 
Ik zie al waar het mis ging. De query $inlogquery werd niet uitgevoerd, maar er werd meteen naar gegevens gevraagd maarja als die er nog niet zijn kunnen ze ook niet worden getoond...
 
Geplaatst door Tha Devil
Ik zie al waar het mis ging. De query $inlogquery werd niet uitgevoerd, [...]
Dat is dus wat ik zei in mijn eerste reply.
 
:o Ik mag nodig een bril aanschaffen....
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan