Ja de titel zegt het al,
Ik heb dus een member system waar je automatich kan registreren, het is zo beveiligd dat je maar 1 keer dezelfde gebruikersnaam kan gebruiken.
Maar nu is dat niet gebeurt (toch werkt de beveileging)
er is 2 keer deze user aangemaakt -->
bg_Xel'Naga (zit een raar teken in --> ' )
en hij kan hem niet inloggen -->
zo zit het in de database -->
Host: localhost
Database : che-live_starcraft
Generatie Tijd: 22 Jun 2004 om 02:05
Gegenereerd door: phpMyAdmin 2.5.6 / MySQL 4.0.16
SQL-query: SELECT * FROM members WHERE membercode = '21' OR membercode = '22 ' LIMIT 0, 50;
Rijen: 2
membercode user pass
21 bg_Xel'Naga a5dbfe1cdfe4632a3575ca3877826d10
22 bg_Xel'Naga a5dbfe1cdfe4632a3575ca3877826d10

En dan heb ik nog een pagina waar statics kunt bekijken van die user die werkt ook niet (alleen bij deze user)
Kijk maar -->
http://www.che-lives-clan.com/starcraft/members_statics.php?id=21
http://www.che-lives-clan.com/starcraft/members_statics.php?id=22
Dan kreeg ik deze error -->
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/che-live/public_html/starcraft/members_statics.php on line 19

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/che-live/public_html/starcraft/members_statics.php on line 23
maar die error krijg ik aleen bij die user.
Dit is de broncode van die statics -->
<?php
require('login_top.php');
require($page1);
?>
<title>Starcraft Source Statics</title>
<?php
require($page2);
?>
<?php
if($ingelogd==1){
if($_GET[id]==""){
$_GET[id]=$members[membercode];
}
$sql = "SELECT * FROM members WHERE membercode = '$_GET[id]'";
$res = mysql_query($sql);
$user = mysql_fetch_array($res);
$sql = "SELECT count(*) FROM topics WHERE naam = '$user[user]'";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$topics=$row[0];
$sql = "SELECT count(*) FROM replys WHERE naam = '$user[user]'";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$replys=$row[0];
$sql = "SELECT count(*) FROM pm WHERE aan = '$user[membercode]' AND readed = '1'";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$new_pm=$row[0];
$sql = "SELECT count(*) FROM pm WHERE aan = '$user[membercode]'";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$pm=$row[0];
$lastonline=date("H:i \- d.m.Y",$user[lastonline]);
echo "<br><br><table width=\"40%\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">\n";
echo "<tr><td class=\"menu_title\" align=\"center\"><b>$user[user] Statics</b></td></tr>\n";
echo "<tr><td class=\"menu\">\n";
echo "» Topics: <b>$topics</b><br>\n";
echo "» Replys: <b>$replys</b><br>\n";
echo "» New pm: <b>$new_pm</b><br>\n";
echo "» Pm: <b>$pm</b><br>\n";
echo "» Profile views: <b>$user[profileviews]</b><br>\n";
echo "» Site views: <b>$user[pageviews]</b><br>\n";
echo "» Last online: <b>$lastonline</b><br>\n";
echo "</td></tr>";
echo "</table><br><br>";
}
else{
header("Location: http://www.che-lives-clan.com/starcraft";);
}
?>
<?php
require($page3);
?>
Ligt dit aan het rare teken in zijn naam ??
En andere pagina met zijn naam werken ook niet
Je kunt een dubbele query voor komen door
UNIQUE ('kollom') te gebruiken


ALTER TABLE `members` ADD UNIQUE (
`user`)

dan zijn er geen dubbele invoer meer mogelijk
En als iemand wel een bestaande 'user' opgeeft, krijg je de mysql error: Dupplicate entree en dan houdt hij er mee op..
ja maar dat lost het probleem nog niet op dat ik zien profile op statics niet kan bekijken
Dit zal waarschijnlijk de probleem wezen

$sql = "SELECT count(*) FROM replys WHERE naam = '$user[user]'";

maak er dit van:
$sql = "SELECT count(*) FROM replys WHERE naam = '".$user['user']."'";

Kijk even of dit wel goed gaat
dat is nodig als er een ' teken inkomt ?
moet je in de database er even een \ voor zetten en dan op de pagina waar het weer word gegeven stripslashes() ofzo hij staat bij de functies op deze site

Reageren