Reacties op het script Uitgebreid ledensysteem
|
Gepost op: 20 december 2004 - 16:03 |
|
|
|
PHP gevorderde
|
dit is nou echt een 5/5 murfy!!!
echt ontzettend mooie start na het opruimen van alle scripts
|
|
|
|
Gepost op: 20 december 2004 - 16:13 |
|
|
|
Crew algemeen
|
Net script Murfy, maar je bent wel gevaarlijk bezig.
Ik heb net even in de activatie pagina gekeken, en zag dat je daar zomaar de username uit de url ophaalt en gebruikt in je SQL query .
Als iemand hier meer van weet, en weet hoe SQL Injections uit te voeren, kan hij zo je hele database over de z**k helpen, en dat wil je niet, lijkt me:s .
Mzzls,
Rensjuh |
|
|
|
Gepost op: 20 december 2004 - 16:20 |
|
|
|
Erelid
|
How shit... thx |
|
|
|
Gepost op: 20 december 2004 - 16:38 |
|
|
|
Onbekend
|
ik herken dat script ergens van... |
|
|
|
Gepost op: 20 december 2004 - 16:40 |
|
|
|
Erelid
|
euhm biertie, dat is niet het ledenscript van Flashmasters, voor als dat is wat je bedoelt... |
|
|
|
Gepost op: 20 december 2004 - 16:41 |
|
|
|
Onbekend
|
waarom heb je mij dan geblokeert? |
|
|
|
Gepost op: 20 december 2004 - 16:43 |
|
|
|
Erelid
|
I didn't... ge zijt gewoon offline.. en daarbij, leeg je PM's, dan kunnen we daar eens verder klappen |
|
|
|
Gepost op: 20 december 2004 - 16:56 |
|
|
|
Lid
|
ik krijg de volgende melding:
Er kon geen account worden aangemaakt omwille van de volgende reden(en):
Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).
er zijn geen alfanummerieke tekens gebruikt bij login... zowel niet bij mail, wachtwoord als username? |
|
|
|
Gepost op: 20 december 2004 - 17:06 |
|
|
|
Erelid
|
Ok, heb het juist verbeterd Ik was vergeten dat stukje te testen, en had dan ook niet gezien dat de veldnaam verkeerd was. Nu werkt het wel. Enjoy. |
|
|
|
Gepost op: 20 december 2004 - 17:26 |
|
|
|
Lid
|
Citaat: [I][B]Murfy[/B] schreef op 20 December 2004 - 17:06[/I]
Ok, heb het juist verbeterd Ik was vergeten dat stukje te testen, en had dan ook niet gezien dat de veldnaam verkeerd was. Nu werkt het wel. Enjoy.
euh... is je rar aangepast?:$ |
|
|
|
Gepost op: 20 december 2004 - 17:29 |
|
|
|
Erelid
|
ja |
|
|
|
Gepost op: 20 december 2004 - 17:29 |
|
|
|
Lid
|
gek, ik krijg de error opnieuw:o |
|
|
|
Gepost op: 20 december 2004 - 17:31 |
|
|
|
Erelid
|
Welke gebruikersnaam voer je in? |
|
|
|
Gepost op: 20 december 2004 - 17:32 |
|
|
|
Lid
|
user: PDX
pass: myass
mail: paradoxx@scarlet.be |
|
|
|
Gepost op: 20 december 2004 - 17:43 |
|
|
|
Erelid
|
In het voorbeeld werkt het wel ... ben je zeker dat dit registreren.php is:
<?php
include('config.php');
if($cfg['cronjobs'] != 1) {
include('cronjobs.php');
}
if(isset($_SESSION['gebruiker'])) {
header("Location: ingelogged.php");
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><?=$cfg['site']?> || Registreren</title>
</head>
<body>
<h2>Maak een account aan op <?=$cfg['site']?></h2>
<?php if(!isset($_POST['Submit'])) { ?>
<form name="form1" method="post" action="">
<table border="0">
<tr>
<td>Gebruikersnaam:</td>
<td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td>
</tr>
<tr>
<td>Wachtwoord herhalen: </td>
<td><input name="wachtwoord2" type="password" id="wachtwoord2" size="35"></td>
</tr>
<tr>
<td>E-mailadres:</td>
<td><input name="email" type="text" id="email" size="35"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="Submit" value="Registreren">
<input type="reset" name="Reset" value="Wissen"></td>
</tr>
</table>
</form>
<?php } else {
$error = array();
if(!check_email($_POST['email'])) {
$error[] = 'Er is geen geldig e-mailadres ingevuld.';
}
if($_POST['gebruikersnaam'] == "") {
$error[] = 'Er is geen gebruikersnaam ingevuld.';
}
if(!preg_match("/^[-_0-9a-z]{1,}$/i", $_POST['gebruikersnaam'])) { // Thx to FangorN for this check :]
$error[] = 'Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).';
}
if($_POST['wachtwoord'] == "" || $_POST['wachtwoord'] != $_POST['wachtwoord2']) {
$error[] = 'Er is geen wachtwoord ingevuld of de 2 wachtwoorden komen niet overeen.';
}
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) {
$error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.';
}
if(geregistreerd($_POST['email'],email)) {
$error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Er kon geen account worden aangemaakt omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
} else {
$activatiecode = activatiecode($cfg['act_lengte']);
$tpl = new TemplatePower('mail.tpl');
$tpl->prepare();
$tpl->assign(array(
"site" => $cfg['site'],
"url" => $cfg['url'],
"gebruikersnaam" => $_POST['gebruikersnaam'],
"wachtwoord" => $_POST['wachtwoord'],
"code" => $activatiecode
));
$template = $tpl->getOutputContent();
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: ".$cfg['site']." <".$cfg['email'].">\n";
mail($_POST['email'],"Account op ".$cfg['site']." activeren",$template,$headers);
mysql_query("INSERT INTO leden_temp (gebruikersnaam,wachtwoord,datum,email,code) VALUES ('".$_POST['gebruikersnaam']."','".md5($_POST['wachtwoord'])."','".time()."','".$_POST['email']."','".$activatiecode."')");
?>Je account is tijdelijk geregistreerd. Controleer nu je mailbox, binnen enkele ogenblikken zal er een activatiemail arriveren.<br /><strong>Attentie Hotmail-gebruikers:</strong> Kijk ook bij "Ongewenste post"!!
<?php
}
} ?>
</body>
</html>
<?php include('config.php'); if($cfg['cronjobs'] != 1) { include('cronjobs.php'); } if(isset($_SESSION['gebruiker'])) { header("Location: ingelogged.php"); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title><?=$cfg['site']?> || Registreren</title> </head> <body> <h2>Maak een account aan op <?=$cfg['site']?></h2> <?php if(!isset($_POST['Submit'])) { ?> <form name="form1" method="post" action=""> <table border="0"> <tr> <td>Gebruikersnaam:</td> <td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35"></td> </tr> <tr> <td>Wachtwoord:</td> <td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td> </tr> <tr> <td>Wachtwoord herhalen: </td> <td><input name="wachtwoord2" type="password" id="wachtwoord2" size="35"></td> </tr> <tr> <td>E-mailadres:</td> <td><input name="email" type="text" id="email" size="35"></td> </tr> <tr> <td colspan="2"><input type="submit" name="Submit" value="Registreren"> <input type="reset" name="Reset" value="Wissen"></td> </tr> </table> </form> <?php } else { if(!check_email($_POST['email'])) { $error[] = 'Er is geen geldig e-mailadres ingevuld.'; } if($_POST['gebruikersnaam'] == "") { $error[] = 'Er is geen gebruikersnaam ingevuld.'; } if(!preg_match("/^[-_0-9a-z]{1,}$/i", $_POST['gebruikersnaam'])) { // Thx to FangorN for this check :] $error[] = 'Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).'; } if($_POST['wachtwoord'] == "" || $_POST['wachtwoord'] != $_POST['wachtwoord2']) { $error[] = 'Er is geen wachtwoord ingevuld of de 2 wachtwoorden komen niet overeen.'; } if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) { $error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.'; } if(geregistreerd($_POST['email'],email)) { $error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.'; } $fouten = sizeof($error); // aantal errors tellen if($fouten != 0) { // Er is minstens 1 error echo 'Er kon geen account worden aangemaakt omwille van de volgende reden(en):'; for($i = 0; $i < $fouten; $i++) { echo '<li>'.$error[$i].'</li>'; } } else { $activatiecode = activatiecode($cfg['act_lengte']); $tpl = new TemplatePower('mail.tpl'); $tpl->prepare(); "site" => $cfg['site'], "url" => $cfg['url'], "gebruikersnaam" => $_POST['gebruikersnaam'], "wachtwoord" => $_POST['wachtwoord'], "code" => $activatiecode )); $template = $tpl->getOutputContent(); $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\n"; $headers .= "From: ".$cfg['site']." <".$cfg['email'].">\n"; mail($_POST['email'],"Account op ".$cfg['site']." activeren",$template,$headers); mysql_query("INSERT INTO leden_temp (gebruikersnaam,wachtwoord,datum,email,code) VALUES ('".$_POST['gebruikersnaam']."','".md5($_POST['wachtwoord'])."','".time()."','".$_POST['email']."','".$activatiecode."')"); ?>Je account is tijdelijk geregistreerd. Controleer nu je mailbox, binnen enkele ogenblikken zal er een activatiemail arriveren.<br /><strong>Attentie Hotmail-gebruikers:</strong> Kijk ook bij "Ongewenste post"!! <?php } } ?> </body> </html>
|
|
|
|
Gepost op: 20 december 2004 - 17:47 |
|
|
|
Lid
|
|
|
|
Gepost op: 20 december 2004 - 17:53 |
|
|
|
Erelid
|
Verander lijn 53 in dit:
if(!preg_match("/^([-_0-9a-z]*)$/i", $_POST['gebruikersnaam'])) {
if(!preg_match("/^([-_0-9a-z]*)$/i", $_POST['gebruikersnaam'])) {
Daar moet het zitten... |
|
|
|
Gepost op: 21 december 2004 - 16:17 |
|
|
|
MySQL ver gevorderde
|
ziet er goed uit. Mis wat meer uitleg en jammer dat je zo'n grote templateclass hebt gebruikt voor alleen de opmaak van de mailtjes. Dan had je het liever weg kunnen laten |
|
|
|
Gepost op: 21 december 2004 - 16:20 |
|
|
|
HTML beginner
|
Citaat: [I][B]Dennisvb[/B] schreef op 21 December 2004 - 16:17[/I]
ziet er goed uit. Mis wat meer uitleg en jammer dat je zo'n grote templateclass hebt gebruikt voor alleen de opmaak van de mailtjes. Dan had je het liever weg kunnen laten
Dat zie ik zelf niet als een 'jammer' opmaak is altijd megenomen |
|
|
|
Gepost op: 21 december 2004 - 16:20 |
|
|
|
Erelid
|
Ik ga het nog voorzien van meer opmerkingen dan, maar de TemplatePower is vooral bedoeld omdat ik van plan ben er nog modules bij te scripten later... |
|
|
|
Gepost op: 21 december 2004 - 16:20 |
|
|
|
MySQL ver gevorderde
|
Nog iets gevonden wat niet zo mooi staan:
$checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0);
Je selecteerd alles om te kijken of de gebrukersnaam al bestaat. Wanneer je net iets als PHPBB hebt zijn er tientallen kolommen. Die selecteer je allemaal terwijl je alleen gebruikersnaam nodig hebt. Beetje slordig dus :] Dit kan heel langzaam gaan werken dan |
|
|
|
Gepost op: 21 december 2004 - 16:21 |
|
|
|
Erelid
|
Keej, I'll change that as soon as possible.
Citaat: [I][B]RinkXing[/B] schreef op 21 December 2004 - 16:20[/I]
[..quote..]
Dat zie ik zelf niet als een 'jammer' opmaak is altijd megenomen
Dat is niet echt waar. Het is een gigantische class en het duurt langer daardoor. |
|
|
|
Gepost op: 22 december 2004 - 12:57 |
|
|
|
Onbekend
|
murfy is dit dezelfde als bij murfymedia.com?^^ |
|
|
|
Gepost op: 22 december 2004 - 12:59 |
|
|
|
Erelid
|
bij murfymedia.com is er geen loginsysteem, of toch gene waar jullie aankunnen... |
|
|
|
Gepost op: 05 januari 2005 - 12:43 |
|
|
|
Nieuw lid
|
Hoe moet je een pagina maken dat leden meer info kunnen toevoegen en wijzigen bijv. geboortedatum en woonplaats |
|
|
|
Gepost op: 09 januari 2005 - 00:56 |
|
|
|
Nieuw lid
|
Ik maak ook gebruik van dit inlogsysteem maar bij het uittesten van de registratiepagina krijg ik volgende foutmelding : Fatal error: Call to undefined function: check_email() in /usr/home/clubactiv/domains/clubactivity.be/public_html/inlogsysteem/registreren.php on line 48:s Hoe krijg ik dit foutje uit mijn script?
Vriendelijke groeten,
Yannick |
|
|
|
Gepost op: 09 januari 2005 - 00:59 |
|
|
|
Erelid
|
zet dit eens bovenaan registreren.php dan:
<?php
function check_email($in) {
$patroon = "/^([a-z0-9_-]+\.)*[a-z0-9_-]+@([a-z0-9_-]{2,}\.)+([a-z0-9_-]{2,})$/i";
return preg_match($patroon, $in);
}
?>
<?php function check_email($in) { $patroon = "/^([a-z0-9_-]+\.)*[a-z0-9_-]+@([a-z0-9_-]{2,}\.)+([a-z0-9_-]{2,})$/i"; } ?>
|
|
|
|
Gepost op: 09 januari 2005 - 01:20 |
|
|
|
Nieuw lid
|
Nu krijg ik dit weer als foutmelding : Fatal error: Call to undefined function: geregistreerd() in /usr/home/clubactiv/domains/clubactivity.be/public_html/inlogsysteem/registreren.php on line 66:s |
|
|
|
Gepost op: 09 januari 2005 - 01:22 |
|
|
|
Erelid
|
Ben je wel zeker dat config.php correct geinclude wordt? |
|
|
|
Gepost op: 09 januari 2005 - 01:23 |
|
|
|
Nieuw lid
|
voor alle duidelijkheid zal ik het scriptje registreren.php hier onder plakken....
<?php
function check_email($in) {
$patroon = "/^([a-z0-9_-]+\.)*[a-z0-9_-]+@([a-z0-9_-]{2,}\.)+([a-z0-9_-]{2,})$/i";
return preg_match($patroon, $in);
}
?>
<?php
include('config.php');
if($cfg['cronjobs'] != 1) {
include('cronjobs.php');
}
if(isset($_SESSION['gebruiker'])) {
header("Location: inlogsysteem/?pagina=ingelogged");
}
?>
<link rel="stylesheet" type="text/css" href="Standaard.css">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><?=$cfg['site']?> || Registreren</title>
</head>
<body>
<font color="ffffff" size="2" face="Arial">Maak een account aan op <b>ClubActivity.be!</b></font>
<?php if(!isset($_POST['Submit'])) { ?>
<form name="form1" method="post" action="">
<table border="0">
<tr>
<td>Gebruikersnaam:</td>
<td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td>
</tr>
<tr>
<td>Wachtwoord bevestigen: </td>
<td><input name="wachtwoord2" type="password" id="wachtwoord2" size="35"></td>
</tr>
<tr>
<td>E-mailadres:</td>
<td><input name="email" type="text" id="email" size="35"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="Submit" value="Registreren">
<input type="reset" name="Reset" value="Wissen"></td>
</tr>
</table>
</form>
<?php } else {
$error = array();
if(!check_email($_POST['email'])) {
$error[] = 'Er is geen geldig e-mailadres ingevuld.';
}
if($_POST['gebruikersnaam'] == "") {
$error[] = 'Er is geen gebruikersnaam ingevuld.';
}
if(!preg_match("/^[-_0-9a-z]{2,}$/i", $_POST['gebruikersnaam'])) { // Thx to FangorN for this check :]
$error[] = 'Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).';
}
if($_POST['wachtwoord'] == "" || $_POST['wachtwoord'] != $_POST['wachtwoord2']) {
$error[] = 'Er is geen wachtwoord ingevuld of de 2 wachtwoorden komen niet overeen.';
}
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) {
$error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.';
}
if(geregistreerd($_POST['email'],email)) {
$error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Er kon geen account worden aangemaakt omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
} else {
$activatiecode = activatiecode($cfg['act_lengte']);
$tpl = new TemplatePower('mail.tpl');
$tpl->prepare();
$tpl->assign(array(
"site" => $cfg['site'],
"url" => $cfg['url'],
"gebruikersnaam" => $_POST['gebruikersnaam'],
"wachtwoord" => $_POST['wachtwoord'],
"code" => $activatiecode
));
$template = $tpl->getOutputContent();
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: ".$cfg['site']." <".$cfg['email'].">\n";
mail($_POST['email'],"Account op ".$cfg['site']." activeren",$template,$headers);
mysql_query("INSERT INTO leden_temp (gebruikersnaam,wachtwoord,datum,email,code) VALUES ('".$_POST['gebruikersnaam']."','".md5($_POST['wachtwoord'])."','".time()."','".$_POST['email']."','".$activatiecode."')");
?>Je account is geregistreerd. Controleer nu je mailbox, binnen enkele ogenblikken zal er een activatiemail arriveren.<br /><strong>Attentie Hotmail-gebruikers:</strong> Kijk ook bij "Ongewenste post"!!
<?php
}
} ?>
</body>
</html>
<?php function check_email($in) { $patroon = "/^([a-z0-9_-]+\.)*[a-z0-9_-]+@([a-z0-9_-]{2,}\.)+([a-z0-9_-]{2,})$/i"; } ?> <?php include('config.php'); if($cfg['cronjobs'] != 1) { include('cronjobs.php'); } if(isset($_SESSION['gebruiker'])) { header("Location: inlogsysteem/?pagina=ingelogged"); } ?> <link rel="stylesheet" type="text/css" href="Standaard.css"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title><?=$cfg['site']?> || Registreren</title> </head> <body> <font color="ffffff" size="2" face="Arial">Maak een account aan op <b>ClubActivity.be!</b></font> <?php if(!isset($_POST['Submit'])) { ?> <form name="form1" method="post" action=""> <table border="0"> <tr> <td>Gebruikersnaam:</td> <td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35"></td> </tr> <tr> <td>Wachtwoord:</td> <td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td> </tr> <tr> <td>Wachtwoord bevestigen: </td> <td><input name="wachtwoord2" type="password" id="wachtwoord2" size="35"></td> </tr> <tr> <td>E-mailadres:</td> <td><input name="email" type="text" id="email" size="35"></td> </tr> <tr> <td colspan="2"><input type="submit" name="Submit" value="Registreren"> <input type="reset" name="Reset" value="Wissen"></td> </tr> </table> </form> <?php } else { if(!check_email($_POST['email'])) { $error[] = 'Er is geen geldig e-mailadres ingevuld.'; } if($_POST['gebruikersnaam'] == "") { $error[] = 'Er is geen gebruikersnaam ingevuld.'; } if(!preg_match("/^[-_0-9a-z]{2,}$/i", $_POST['gebruikersnaam'])) { // Thx to FangorN for this check :] $error[] = 'Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).'; } if($_POST['wachtwoord'] == "" || $_POST['wachtwoord'] != $_POST['wachtwoord2']) { $error[] = 'Er is geen wachtwoord ingevuld of de 2 wachtwoorden komen niet overeen.'; } if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) { $error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.'; } if(geregistreerd($_POST['email'],email)) { $error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.'; } $fouten = sizeof($error); // aantal errors tellen if($fouten != 0) { // Er is minstens 1 error echo 'Er kon geen account worden aangemaakt omwille van de volgende reden(en):'; for($i = 0; $i < $fouten; $i++) { echo '<li>'.$error[$i].'</li>'; } } else { $activatiecode = activatiecode($cfg['act_lengte']); $tpl = new TemplatePower('mail.tpl'); $tpl->prepare(); "site" => $cfg['site'], "url" => $cfg['url'], "gebruikersnaam" => $_POST['gebruikersnaam'], "wachtwoord" => $_POST['wachtwoord'], "code" => $activatiecode )); $template = $tpl->getOutputContent(); $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\n"; $headers .= "From: ".$cfg['site']." <".$cfg['email'].">\n"; mail($_POST['email'],"Account op ".$cfg['site']." activeren",$template,$headers); mysql_query("INSERT INTO leden_temp (gebruikersnaam,wachtwoord,datum,email,code) VALUES ('".$_POST['gebruikersnaam']."','".md5($_POST['wachtwoord'])."','".time()."','".$_POST['email']."','".$activatiecode."')"); ?>Je account is geregistreerd. Controleer nu je mailbox, binnen enkele ogenblikken zal er een activatiemail arriveren.<br /><strong>Attentie Hotmail-gebruikers:</strong> Kijk ook bij "Ongewenste post"!! <?php } } ?> </body> </html>
groeten,
yannick |
|
|
|
Gepost op: 09 januari 2005 - 01:24 |
|
|
|
Erelid
|
Het moet zijn dat config.php niet geupload is, ofdat je je eigen config.php gebruikt ofzow, want de functies zitten in config.php. |
|
|
|
Gepost op: 09 januari 2005 - 01:29 |
|
|
|
Nieuw lid
|
Dit is mijn config.php pagina die reeds al geupload is op mijn webstek...
PS database gegevens (user, password, naam) zijn bij mij wel ingevuld
*Murfy knip* |
|
|
|
Gepost op: 09 januari 2005 - 01:30 |
|
|
|
Erelid
|
Mjah daaraan kan het dus niet liggen |
|
|
|
Gepost op: 09 januari 2005 - 01:32 |
|
|
|
Crew algemeen
|
Misschien heb je hem per ongeluk in een verkeerde map gezet?
Staat er in registreren.php ook zoiets als include("config.php"); ?
Dat kan ook voor die fout veroorzaken.
Zomaar ff een gokje.
Mzzls,
Rensjuh |
|
|
|
Gepost op: 09 januari 2005 - 01:34 |
|
|
|
Nieuw lid
|
Dit staar bij mij op lijn 64-70
}
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) {
$error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.';
}
if(geregistreerd($_POST['email'],email)) {
$error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
}
} if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) { $error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.'; } if(geregistreerd($_POST['email'],email)) { $error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.'; }
ligt het misschien aan het feit dat geregistreerd geen functie is |
|
|
|
Gepost op: 09 januari 2005 - 01:37 |
|
|
|
Nieuw lid
|
Citaat: [I][B]Rensjuh[/B] schreef op 09 Januari 2005 - 01:32[/I]
Misschien heb je hem per ongeluk in een verkeerde map gezet?
Staat er in registreren.php ook zoiets als include("config.php"); ?
Dat kan ook voor die fout veroorzaken.
Zomaar ff een gokje.
Mzzls,
Rensjuh
Nee daar ligt hem de fout niet... Heb ik al nagekeken |
|
|
|
Gepost op: 09 januari 2005 - 01:40 |
|
|
|
Crew algemeen
|
@YannickVDS: Ik heb net het zipje gedownload, en wat er bij jouw op regel 64 - 70 staat, staat bij mij op regel 58 - 64.
Bij mij staat dit op regel 64 - 70:
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Er kon geen account worden aangemaakt omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
} $fouten = sizeof($error); // aantal errors tellen if($fouten != 0) { // Er is minstens 1 error echo 'Er kon geen account worden aangemaakt omwille van de volgende reden(en):'; for($i = 0; $i < $fouten; $i++) { echo '<li>'.$error[$i].'</li>';
Misschien even de zip opnieuw downloaden, en dan uploaden naar je server.
Misschien helpt het.
Mzzls,
Rensjuh |
|
|
|
Gepost op: 09 januari 2005 - 01:45 |
|
|
|
Nieuw lid
|
Citaat: [I][B]Rensjuh[/B] schreef op 09 Januari 2005 - 01:40[/I]
@YannickVDS: Ik heb net het zipje gedownload, en wat er bij jouw op regel 64 - 70 staat, staat bij mij op regel 58 - 64.
Bij mij staat dit op regel 64 - 70:
[..code..]
Misschien even de zip opnieuw downloaden, en dan uploaden naar je server.
Misschien helpt het.
Mzzls,
Rensjuh
Nee maakt geen verschil uit is juist hetzelfde:s |
|
|
|
Gepost op: 09 januari 2005 - 01:47 |
|
|
|
Crew algemeen
|
Raar dat er bij mij dan iets anders staat
Als je even naar registreren.phps gaat, kun je de code zien die er bij mij in registreren.php staat, en desnoods kopieren.
Mzzls,
Rensjuh |
|
|
|
Gepost op: 09 januari 2005 - 01:51 |
|
|
|
Nieuw lid
|
Bij mij geeft hij foutmelding op volgende regels:
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) {
$error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.';
}
if(geregistreerd($_POST['email'],email)) {
$error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) { $error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.'; } if(geregistreerd($_POST['email'],email)) { $error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
groeten,
yannick
PS: Klopt if(geregistreerd) wel |
|
|
|
Gepost op: 09 januari 2005 - 02:11 |
|
|
|
Crew algemeen
|
Jah.
Je kunt in een if() loop gewoon functies (eigen of van PHP) gewoon aanroepen.
Die functie returned een boolean (true/false).
Dus het zou eigenlijk gewoon moeten werken.
Mzzls,
Rensjuh |
|
|
|
Gepost op: 09 januari 2005 - 15:07 |
|
|
|
Nieuw lid
|
bij mij doet ie t gewoon:s |
|
|
|
Gepost op: 16 januari 2005 - 01:19 |
|
|
|
PHP interesse
|
In je database sla je de wachtwoorden gecodeerd met md5 op, maar je laat de gebruiker zijn wachtwoord wel ongecodeerd via internet zenden.
Bouw je niet beter een javascript functie in die op het moment dat er op de submitknop gedrukt wordt, het wachtwoord versleutelt en dan pas het paswoord over internet verzend?
Ik heb hier een voorbeeld voor jouw code:
->login.php
<?php
include('config.php');
if($cfg['cronjobs'] != 1) { // Geen cronjobs ondersteund...
include('cronjobs.php');
}
if(isset($_SESSION['gebruiker'])) {
header("Location: ingelogged.php");
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Inloggen</title>
<script language="JavaScript" src="md5.js"></script> <!-- md5.js in zelde map zetten als je script, duuuh -->
<script language="JavaScript">
function md5(f) {
var wacht = window.document.form1.wachtwoord.value;
window.document.form1.wachtwoord.value = calcMD5(wacht);
}
</script>
</head>
<body>
<form name="form1" method="post" action="" onSubmit="return md5(this)">
<table border="0">
<tr>
<td>Gebruikersnaam:</td>
<td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35" <?php if(isset($_GET['gebruikersnaam'])) { ?>value="<?=$_GET['gebruikersnaam']?>"<?php } ?>></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td>
</tr>
<tr>
<td>Tijd:</td>
<td><select name="tijd" id="tijd">
<option value="3600" selected>Een uur</option>
<option value="86400">Een dag</option>
<option value="604800">Een week</option>
<option value="2678400">Een maand</option>
<option value="32140800">Een jaar</option>
<option value="32140767859200">Altijd</option>
</select>
(cookies vereist) </td>
</tr>
<tr>
<td colspan="2"><input name="poging" id="poging" type="hidden" value="<?php echo $_POST['poging']+1; ?>"><input type="submit" name="Submit" value="Inloggen"></td>
</tr>
</table>
</form>
<?php if(isset($_POST['Submit'])) {
if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug?
header("Location: wachtwoord.php");
}
$checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0);
$checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0);
if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") {
$error[] = 'Vul alle velden in!';
}
if($checkg == 0 && $_POST['gebruikersnaam'] != "") {
$error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.';
}
if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) {
$error[] = 'Het ingevoerde wachtwoord is niet correct.';
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Kan niet inloggen omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
echo 'Poging '.$_POST['poging'].' van '.$cfg['poging'];
} else {
session_start();
$res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'");
$row = mysql_fetch_assoc($res);
setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+$_POST['tijd'],"/");
setcookie("wachtwoord",$row['wachtwoord'],time()+$_POST['tijd'],"/");
$_SESSION['gebruiker'] = $row['gebruikersnaam'];
$_SESSION['gid'] = $row['id'];
header("Location: ingelogged.php");
}
} ?>
</body>
</html>
<?php include('config.php'); if($cfg['cronjobs'] != 1) { // Geen cronjobs ondersteund... include('cronjobs.php'); } if(isset($_SESSION['gebruiker'])) { header("Location: ingelogged.php"); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Inloggen</title> <script language="JavaScript" src="md5.js"></script> <!-- md5.js in zelde map zetten als je script, duuuh --> <script language="JavaScript"> function md5(f) { var wacht = window.document.form1.wachtwoord.value; window.document.form1.wachtwoord.value = calcMD5(wacht); } </script> </head> <body> <form name="form1" method="post" action="" onSubmit="return md5(this)"> <table border="0"> <tr> <td>Gebruikersnaam:</td> <td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35" <?php if(isset($_GET['gebruikersnaam'])) { ?>value=" <?=$_GET['gebruikersnaam']?>" <?php } ?>></td> </tr> <tr> <td>Wachtwoord:</td> <td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td> </tr> <tr> <td>Tijd:</td> <td><select name="tijd" id="tijd"> <option value="3600" selected>Een uur</option> <option value="86400">Een dag</option> <option value="604800">Een week</option> <option value="2678400">Een maand</option> <option value="32140800">Een jaar</option> <option value="32140767859200">Altijd</option> </select> (cookies vereist) </td> </tr> <tr> <td colspan="2"><input name="poging" id="poging" type="hidden" value=" <?php echo $_POST['poging']+1; ?>"><input type="submit" name="Submit" value="Inloggen"></td> </tr> </table> </form> <?php if(isset($_POST['Submit'])) { if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug? header("Location: wachtwoord.php"); } $checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0); $checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0); if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") { $error[] = 'Vul alle velden in!'; } if($checkg == 0 && $_POST['gebruikersnaam'] != "") { $error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.'; } if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) { $error[] = 'Het ingevoerde wachtwoord is niet correct.'; } $fouten = sizeof($error); // aantal errors tellen if($fouten != 0) { // Er is minstens 1 error echo 'Kan niet inloggen omwille van de volgende reden(en):'; for($i = 0; $i < $fouten; $i++) { echo '<li>'.$error[$i].'</li>'; } echo 'Poging '.$_POST['poging'].' van '.$cfg['poging']; } else { $res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"); setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+$_POST['tijd'],"/"); setcookie("wachtwoord",$row['wachtwoord'],time()+$_POST['tijd'],"/"); $_SESSION['gebruiker'] = $row['gebruikersnaam']; $_SESSION['gid'] = $row['id']; header("Location: ingelogged.php"); } } ?> </body> </html>
-> md5.js (kun je downloaden van deze site. wel in zelfde map zetten als je script!)
http://www-adel...ash/md5.js
Nog een tip: Als je waarden van een var gebruikt die de bezoeker invuld, controleer deze dan altijd op "rare" tekens, zoals ; ' \ enzo. Dit om geen error te krijgen van "domme" bezoeker en dat hacker dit niet kunnen uitbuiten. (denk zelf da het laatste virus die phpbb trof van zulke fout gebruik maakte)
zie http://www.site...4&id=5
Greeetz, Thomas |
|
|
|
Gepost op: 17 januari 2005 - 23:01 |
|
|
|
HTML interesse
|
wrom js as je het anders invult kan je hem ook coderen met behulp van php codes (as je criminals script heb sie je het ask me for it als je het nodig heb)
maar ik krijg dit probleem
Regel 47 -> $check1 = mysql_result(mysql_query("SELECT COUNT(gebruikersnaam) FROM leden_temp WHERE ".$methode."='".$var."'"),0); // totaal aantal records uit de tijdelijk tabel
Regel 48 -> $check2 = mysql_result(mysql_query("SELECT COUNT(id) FROM leden WHERE ".$methode."='".$var."'"),0); // totaal aantal records uit de ledentabel
Regel 47 -> $check1 = mysql_result(mysql_query("SELECT COUNT(gebruikersnaam) FROM leden_temp WHERE ".$methode."='".$var."'"),0); // totaal aantal records uit de tijdelijk tabel Regel 48 -> $check2 = mysql_result(mysql_query("SELECT COUNT(id) FROM leden WHERE ".$methode."='".$var."'"),0); // totaal aantal records uit de ledentabel
euh...lol ?
Citaat: Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/fwarz/domains/f-warz.com/public_html/sofclan/logindinges2/config.php on line 47
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/fwarz/domains/f-warz.com/public_html/sofclan/logindinges2/config.php on line 48
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/fwarz/domains/f-warz.com/public_html/sofclan/logindinges2/config.php on line 47
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/fwarz/domains/f-warz.com/public_html/sofclan/logindinges2/config.php on line 48
wat moet ik hiermee ? |
|
|
|
Gepost op: 18 januari 2005 - 14:39 |
|
|
|
PHP interesse
|
Je code wordt niet ongecodeerd over internet verzonden. Als men deze pakketjes onderschept kan hij wel inloggen, maar weet men je code niet.
Wel handig als je die code voor nog andere zaken gebruikt als email pass enzo. Je email kan namelijk zomaar van de site geplukt worden...
Is gewoon een extra beveiliging. Hoe moeilijker om in te breken je het maakt, hoe beter je script.
En ik ben gewoon ook voorstander van javascript, omdat dit servercapaciteit scheelt!
Alles heeft zn voor en nadelen... |
|
|
|
Gepost op: 23 januari 2005 - 17:36 |
|
|
|
PHP gevorderde
|
hallo,
Bij het installeren van het ledensysteem kreeg ik de volgende foutmelding.
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/html/Chris/install.php:12) in /var/www/html/Chris/sessie.php on line 2
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/html/Chris/install.php:12) in /var/www/html/Chris/sessie.php on line 2
wat kan ik daaraan doen?
|
|
|
|
Gepost op: 04 februari 2005 - 22:29 |
|
|
|
PHP ver gevorderde
|
ob_start(); bovenaan je pagina zetten en ob_end_flush(); onderaan |
|
|
|
Gepost op: 05 februari 2005 - 10:15 |
|
|
|
MySQL ver gevorderde
|
Let er wel op dat het limiet van 3x fout wachtwoord invoeren niet werkt, want je kunt met de history back button gewoon terug gaan. Beter is ip invoeren in database of cookies te zetten, maar dit zal niet werken! |
|
|
|
Gepost op: 16 februari 2005 - 20:11 |
|
|
|
Lid
|
Goed script. Werkt bij mij perfect.
Ik heb alleen 1 vraagje. Ik gebruik zelf het forum van directtopics. Nu zou ik graag dit memberssysteem en het directtopics forum aanelkaar linken dat je je maar 1 keer hoeft in te loggen om op de site en op het forum te komen. Iemand enig idee hoe ik dit script zo kan aanpassen dat het ook werkt met mijn forum? |
|
|
Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom. |
|
|
|