Versio

Register script error

Overzicht Reageren

Joris van Kuijk

Joris van Kuijk

25/08/2011 18:29:26
Quote Anchor link
Dit is mijn register script voor de criminolz source, ik ben niet zo heel goed in php dus weet niet precies wat er fout is, zou iemand mij kunnen helpen?

Ik krijg de volgende fout: Parse error: syntax error, unexpected T_STRING in /home/a8789922/public_html/includes/systemen/outgame/inc.register.php on line 55

inc.register.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?php  
  if(isset($_POST['submit']) && $_POST['submit'] == "Registreer") {  
    $fout = array();  
    $match = mysql_query("SELECT id FROM users WHERE login = '" . $_POST['login'] . "'");  
    $dubbel = mysql_query("SELECT id FROM users WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'");  
    if (preg_match ("/[&<>%+$*,. ]/i", $_POST['login'])) {  
      $fout[] = "- Je gebruikersnaam mag geen speciale tekens bevatten";  
    }
  

    if(strlen($_POST['login']) > 15) {  
      $fout[] = "- Je gebruikersnaam is te lang: max. 15 tekens";  
    }
  

    if(strlen($_POST['login']) < 3) {  
      $fout[] = "- Je gebruikersnaam is te kort: min. 3 tekens";  
    }
  
      
    if(strlen($_POST['pass']) < 6) {  
      $fout[] = "- Je wachtwoord moet uit minstens 6 tekens bestaan";  
    }
  
      
    if(strlen($_POST['pass']) > 18) {  
      $fout[] = "- Je wachtwoord mag niet meer dan 18 tekens bevatten";  
    }
  

    if($_POST['pass'] != $_POST['pass_repeat']) {  
      $fout[] = "- De wachtwoorden komen niet overeen";  
    }
  
      
    if($_POST['pass'] == $_POST['login']) {  
      $fout[] = "- Je wachtwoord mag niet hetzelfde zijn als je gebruikersnaam";  
    }
  
      
    if(!preg_match("/.+@[a-zA-Z0-9_-]+..+/", $_POST['email'])) {  
      $fout[] = "- Er is geen geldig e-mail adres ingevuld";  
    }
  

    if(mysql_num_rows($match) > 0) {  
      $fout[] = "- Er bestaat al iemand met deze inlognaam";  
    }
  

    if(mysql_num_rows($dubbel) > 0) {  
      $fout[] = "- Je mag maar 1 account per ip registreren!";  
    }
  

    if(!isset($_POST['agree'])) {  
      $fout[] = "- Je moet akkoord gaan met de regels en voorwaarden";  
    }
  
      
    if(empty($fout[0])) {  
 mysql_query("INSERT INTO users (login, pass, email, stad) VALUES('" . $_POST['login'] . "', '" . $_POST['pass'] . "', '" . $_POST['email'] . "', '" . rand(0, count($steden) - 1) . "')") or die(mysql_error());  

$bericht = "Hallo " . $_POST['login'] . "! Bedankt voor het registreren op " . gamenaam . "!  

"
We hebben jouw registratie succesvol verwerkt. "  

"
je kunt nu inloggen op http://" . url . " met de volgende gegevens: "
Gebruikersnaam: " . $_POST['login'] . "  
Wachtwoord: " . $_POST['pass'] . "  

Veel plezier namens de GangWar crew!";  
      
      if(isset($_GET['i'])) {  
        if(mysql_num_rows(mysql_query("
SELECT id FROM users WHERE id = '" . $_GET['i'] . "'")) > 0) {  
          mysql_query("
UPDATE users SET power = power + '5000', kogels = kogels + '20', bank = bank + '20000', callcredits = callcredits + '3' WHERE id = '" . $_GET['i'] . "'");  
          mysql_query("
UPDATE users SET refferals = refferals + '1' WHERE id = '" . $_GET['i'] . "'");  
          mysql_query("
INSERT INTO berichten (onderwerp, bericht, afzender, geaddresseerde, datum, outbox) VALUES('Refferal aangemeld', 'Beste crimineel,rnrnEr heeft zojuist een refferal aangemeld: " . $_POST['login'] . ". Je hebt je beloning zojuist ontvangen!rnMet vriendelijke groet,rnAnoniem.', 'Anoniem', '" . $_GET['i'] . "', '" . get_global_date("Y-m-d H:i:s") . "', 'False')");  
        }  
      }  

      mail($_POST['email'], "
Registratie op " . gamenaam, $bericht, "From: " . gamenaam . " automailer <" . noreply_mail . ">");  
      $goed = "
<div class="dark\"><font color=\"green\" style=\"font: bold\">Je account is succesvol aangemaakt! Er staat een activatiemailtje in je inbox.</font></div>";  
      unset($fout);  
    }
else {  
    foreach($fout as $tekst) {  
      @
$foutje .= "nr" . $tekst;  
    }
  
    $fout = "<div class=\"dark\"><font color=\"red\" style=\"font: bold\">De volgende dingen gingen verkeerd:</font>" . $foutje . "</div>";  
    }  
    }
  
?>
Gewijzigd op 25/08/2011 18:30:45 door Joris van Kuijk
 
PHP hulp

PHP hulp

25/05/2012 14:25:43
Gesponsorde koppelingen:
 
Allard Jansen

Allard Jansen

25/08/2011 18:37:19
Quote Anchor link
Sorry, maar ik zelf medelijden met de server die deze code moet uitvoeren. Wat dacht je hier van. Misschien moet je het 'echo' gedeelte nog eens goed doorlezen.

http://php.net/manual/en/function.echo.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php  
  if(isset($_POST['submit']) && $_POST['submit'] == "Registreer") {  
    $fout = array();  
    $match = mysql_query("SELECT id FROM users WHERE login = '" . $_POST['login'] . "'");  
    $dubbel = mysql_query("SELECT id FROM users WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'");  
    if (preg_match ("/[&<>%+$*,. ]/i", $_POST['login'])) {  
      $fout[] = "- Je gebruikersnaam mag geen speciale tekens bevatten";  
    }
  

    if(strlen($_POST['login']) > 15) {  
      $fout[] = "- Je gebruikersnaam is te lang: max. 15 tekens";  
    }
  

    if(strlen($_POST['login']) < 3) {  
      $fout[] = "- Je gebruikersnaam is te kort: min. 3 tekens";  
    }
  
      
    if(strlen($_POST['pass']) < 6) {  
      $fout[] = "- Je wachtwoord moet uit minstens 6 tekens bestaan";  
    }
  
      
    if(strlen($_POST['pass']) > 18) {  
      $fout[] = "- Je wachtwoord mag niet meer dan 18 tekens bevatten";  
    }
  

    if($_POST['pass'] != $_POST['pass_repeat']) {  
      $fout[] = "- De wachtwoorden komen niet overeen";  
    }
  
      
    if($_POST['pass'] == $_POST['login']) {  
      $fout[] = "- Je wachtwoord mag niet hetzelfde zijn als je gebruikersnaam";  
    }
  
      
    if(!preg_match("/.+@[a-zA-Z0-9_-]+..+/", $_POST['email'])) {  
      $fout[] = "- Er is geen geldig e-mail adres ingevuld";  
    }
  

    if(mysql_num_rows($match) > 0) {  
      $fout[] = "- Er bestaat al iemand met deze inlognaam";  
    }
  

    if(mysql_num_rows($dubbel) > 0) {  
      $fout[] = "- Je mag maar 1 account per ip registreren!";  
    }
  

    if(!isset($_POST['agree'])) {  
      $fout[] = "- Je moet akkoord gaan met de regels en voorwaarden";  
    }
  
      
    if(empty($fout[0])) {  
        mysql_query("INSERT INTO users (login, pass, email, stad) VALUES('" . $_POST['login'] . "', '" . $_POST['pass'] . "', '" . $_POST['email'] . "', '" . rand(0, count($steden) - 1) . "')") or die(mysql_error());  

        $bericht = "Hallo " . $_POST['login'] . "! Bedankt voor het registreren op " . $gamenaam;

echo "We hebben jouw registratie succesvol verwerkt. ";

echo "Je kunt nu inloggen op " . $url . " met de volgende gegevens: <br>";
echo "Gebruikersnaam: " . $_POST['login'];
echo "Wachtwoord: " . $_POST['pass'];  

echo "Veel plezier namens de GangWar crew!";  
      
      if(isset($_GET['i'])) {  
        if(mysql_num_rows(mysql_query("SELECT id FROM users WHERE id = '" . $_GET['i'] . "'")) > 0) {  

          mysql_query("UPDATE users SET power = power + '5000', kogels = kogels + '20', bank = bank + '20000', callcredits = callcredits + '3' WHERE id = '" . $_GET['i'] . "'");  
          mysql_query("UPDATE users SET refferals = refferals + '1' WHERE id = '" . $_GET['i'] . "'");  
          mysql_query("INSERT INTO berichten (onderwerp, bericht, afzender, geaddresseerde, datum, outbox) VALUES('Refferal aangemeld', 'Beste crimineel,rnrnEr heeft zojuist een refferal aangemeld: " . $_POST['login'] . ". Je hebt je beloning zojuist ontvangen!rnMet vriendelijke groet,rnAnoniem.', 'Anoniem', '" . $_GET['i'] . "', '" . get_global_date("Y-m-d H:i:s") . "', 'False')");  
        }  
      }
  

      mail($_POST['email'], "Registratie op " . gamenaam, $bericht, "From: " . gamenaam . " automailer <" . noreply_mail . ">");  
      $goed = "<div class=\"dark\"><font color=\"green\" style=\"font: bold\">Je account is succesvol aangemaakt! Er staat een activatiemailtje in je inbox.</font></div>";  
      unset($fout);  
    }
else {  
    foreach($fout as $tekst) {  
      @
$foutje .= "nr" . $tekst;  
    }
  
    $fout = "<div class=\"dark\"><font color=\"red\" style=\"font: bold\">De volgende dingen gingen verkeerd:</font>" . $foutje . "</div>";  
    }  
    }
  
?>
Gewijzigd op 25/08/2011 18:42:58 door Allard Jansen
 
- Aar -

- Aar -

25/08/2011 18:37:57
Quote Anchor link
Kijk eens naar je kleurtjes. Die quotes op lijn 55 en 57 zijn niet nodig.
Gewijzigd op 25/08/2011 18:39:29 door - Aar -
 
Allard Jansen

Allard Jansen

25/08/2011 18:39:50
Quote Anchor link
Ja das waar.
 
Joris van Kuijk

Joris van Kuijk

25/08/2011 18:40:33
Quote Anchor link
@Allard Janssen

Zoals ik al zei, ben ik niet erg goed in php. Dit heb ik overigens niet zelf in elkaar gezet dit komt van de Criminolz source. Maar zo moet het dus gaan werken?
 
Allard Jansen

Allard Jansen

25/08/2011 18:44:45
Quote Anchor link
Ik heb de code net aangepast. Ik zou hem echter niet 'serieus' gaan gebruiken. Je slaat wachtwoorden plain op in een database. Dat is wel het meest onveilige wat je kan doen. Je kunt ze het beste op slaan in MD5. Maar dan moet je login pagina ook worden aangepast. Mag ik die eens zien?
Gewijzigd op 25/08/2011 18:49:10 door Allard Jansen
 
Joris van Kuijk

Joris van Kuijk

25/08/2011 18:49:01
Quote Anchor link
Ik krijg nog steeds dezelfde foutmelding nou ik deze heb geprobeerd, zelf kan alleen wat kleine veranderingen maar meer ook niet. ik had zelf geprobeerd de activatiecode eruit te halen want die werkte niet. maar misschien heb ik daardoor ook iets fout gedaan, ik zal je even laten zien zoals het standaard was, toen kreeg ik nog geen error maar konden mensen zich dus niet activeren omdat de activatie niet werkt.

inc.register.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php
  if(isset($_POST['submit']) && $_POST['submit'] == "Registreer") {
    $fout = array();
    $match = mysql_query("SELECT id FROM users WHERE login = '" . $_POST['login'] . "'");
    $dubbel = mysql_query("SELECT id FROM users WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'");
    if (preg_match ("/[&<>%\+\$\*\,\. ]/i", $_POST['login'])) {
      $fout[] = "- Je gebruikersnaam mag geen speciale tekens bevatten";
    }


    if(strlen($_POST['login']) > 15) {
      $fout[] = "- Je gebruikersnaam is te lang: max. 15 tekens";
    }


    if(strlen($_POST['login']) < 3) {
      $fout[] = "- Je gebruikersnaam is te kort: min. 3 tekens";
    }

    
    if(strlen($_POST['pass']) < 6) {
      $fout[] = "- Je wachtwoord moet uit minstens 6 tekens bestaan";
    }

    
    if(strlen($_POST['pass']) > 18) {
      $fout[] = "- Je wachtwoord mag niet meer dan 18 tekens bevatten";
    }


    if($_POST['pass'] != $_POST['pass_repeat']) {
      $fout[] = "- De wachtwoorden komen niet overeen";
    }

    
    if($_POST['pass'] == $_POST['login']) {
      $fout[] = "- Je wachtwoord mag niet hetzelfde zijn als je gebruikersnaam";
    }

    
    if(!preg_match("/.+@[a-zA-Z0-9_-]+\..+/", $_POST['email'])) {
      $fout[] = "- Er is geen geldig e-mail adres ingevuld";
    }


    if(mysql_num_rows($match) > 0) {
      $fout[] = "- Er bestaat al iemand met deze inlognaam";
    }


    if(mysql_num_rows($dubbel) > 0) {
      $fout[] = "- Je mag maar 1 account per ip registreren!";
    }


    if(!isset($_POST['agree'])) {
      $fout[] = "- Je moet akkoord gaan met de regels en voorwaarden";
    }

    
    if(empty($fout[0])) {
$activatiecode = rand(1000000000, 9999999999);
$bericht = "Hallo " . $_POST['login'] . "! Bedankt voor het registreren op " . gamenaam . "!

We hebben jouw registratie succesvol verwerkt, en je kunt bijna inloggen. Het enige dat je nog hoeft te doen is op de onderstaande link klikken:
http://"
. url . "/index.php?p=activate&user=" . $_POST['login'] . "&code=" . $activatiecode . "

Nadat je dit gedaan hebt, kun je inloggen op http://"
. url . " met de volgende gegevens:
Gebruikersnaam: "
. $_POST['login'] . "
Wachtwoord: "
. $_POST['pass'] . "

Veel plezier namens de crew!"
;
      mysql_query("INSERT INTO users (login, pass, email, activatiecode, stad) VALUES('" . $_POST['login'] . "', '" . $_POST['pass'] . "', '" . $_POST['email'] . "', '" . $activatiecode . "', '" . rand(0, count($steden) - 1) . "')") or die(mysql_error());

      if(isset($_GET['i'])) {
        if(mysql_num_rows(mysql_query("SELECT id FROM users WHERE id = '" . $_GET['i'] . "'")) > 0) {
          mysql_query("UPDATE users SET power = power + '5000', kogels = kogels + '20', bank = bank + '20000', callcredits = callcredits + '3' WHERE id = '" . $_GET['i'] . "'");
          mysql_query("UPDATE users SET refferals = refferals + '1' WHERE id = '" . $_GET['i'] . "'");
          mysql_query("INSERT INTO berichten (onderwerp, bericht, afzender, geaddresseerde, datum, outbox) VALUES('Refferal aangemeld', 'Beste crimineel,\r\n\r\nEr heeft zojuist een refferal aangemeld: " . $_POST['login'] . ". Je hebt je beloning zojuist ontvangen!\r\nMet vriendelijke groet,\r\nAnoniem.', 'Anoniem', '" . $_GET['i'] . "', '" . get_global_date("Y-m-d H:i:s") . "', 'False')");
        }
      }


      mail($_POST['email'], "Registratie op " . gamenaam, $bericht, "From: " . gamenaam . " automailer <" . noreply_mail . ">");
      $goed = "<div class=\"dark\"><font color=\"green\" style=\"font: bold\">Je account is succesvol aangemaakt! Er staat een activatiemailtje in je inbox.</font></div><br />";
      unset($fout);
    }
else {
    foreach($fout as $tekst) {
      @
$foutje .= "<br />\n\r" . $tekst;
    }

    $fout = "<div class=\"dark\"><font color=\"red\" style=\"font: bold\">De volgende dingen gingen verkeerd:</font>" . $foutje . "</div><br />";
    }
    }

?>


inc.login.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
  $gets
= explode("?", $_SERVER['REQUEST_URI']);
  if(!empty($gets[1])) {
    $gets = "?" . $gets[1];
  }
else {
    $gets = "";
  }

  if(isset($_POST['submit']) && $_POST['submit'] == "Inloggen") {
    $match = mysql_query("SELECT id, activatiecode, vakantie FROM users WHERE login = '" . $_POST['login'] . "' AND pass = '" . $_POST['pass'] . "'");
    if(mysql_num_rows($match) > 0) {
      $user = mysql_fetch_assoc($match);
      if($user['activatiecode'] == 0 && $user['vakantie'] <= 0) {
        mysql_query("UPDATE users SET online = '" . get_global_date("Y-m-d H:i:s") . "' WHERE id = '" . $user['id'] . "'");
        $_SESSION['id'] = $user['id'];
        echo'<script type="text/javascript">window.location.href = "index.php' . $gets . '";</script>';
      }
    }
else {
      $match = mysql_query("SELECT id, activatiecode, vakantie FROM users WHERE login = '" . $_POST['login'] . "' AND pass_v2 = '" . md5($_POST['pass']) . "'");
      if(mysql_num_rows($match) > 0) {
          mysql_query("UPDATE users SET pass = '" . $_POST['pass'] . "', pass_v2 = '' WHERE login = '" . $_POST['login'] . "'");
          $user = mysql_fetch_assoc($match);
        if($user['activatiecode'] == 0 && $user['vakantie'] <= 0) {
          mysql_query("UPDATE users SET online = '" . get_global_date("Y-m-d H:i:s") . "' WHERE id = '" . $user['id'] . "'");
          $_SESSION['id'] = $user['id'];
          echo'<script type="text/javascript">window.location.href = "index.php' . $gets . '";</script>';
        }
      }
    }

    if(!isset($user['activatiecode'])) {
      $fout = "<div class=\"dark\"><font color=\"red\" style=\"font-weight: bold\">Je hebt een verkeerde gebruikersnaam of wachtwoord ingevuld!</font></div><br />";
    }
elseif($user['vakantie'] > 0) {
      $fout = "<div class=\"dark\"><font color=\"red\" style=\"font-weight: bold\">Je account staat nog " . $user['vakantie'] . " dagen op vakantiestatus.</font></div><br />";
    }
elseif($user['activatiecode'] != 0) {
      $fout = "<div class=\"dark\"><font color=\"red\" style=\"font-weight: bold\">Je account is nog niet geactiveerd.</font></div><br />";
    }
  }

?>
 
Allard Jansen

Allard Jansen

25/08/2011 18:50:15
Quote Anchor link
Oke, waarom werkte de activatie code niet?
 
Joris van Kuijk

Joris van Kuijk

25/08/2011 18:52:17
Quote Anchor link
De mail kwam wel aan maar als je op de link drukte kwam je op een error 404 pagina.
En ook geeft hij steeds hetzelfde getal door volgensmij.

Edit:
Hierbij ook mijn activate.php misschien zit daar het probleem in met het activeren.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
echo'
<div id="content_top"> </div>

        <div id="content" style="float: left">

<h1 class="titel">Account activeren</h1>
<div class="dark">'
;

  $match = mysql_query("SELECT id FROM users WHERE login = '" . @$_GET['user'] . "' AND activatiecode = '" . @$_GET['code'] . "' AND activatiecode != '0'");
  if(mysql_num_rows($match) > 0) {
    mysql_query("UPDATE users SET activatiecode = '0' WHERE login = '" . $_GET['user'] . "'");
    echo"<font color=\"green\" style=\"font: bold\">Je account is geactiveerd. Je kunt nu inloggen. Veel plezier!</font>";
  }
else {
    echo"<font color=\"red\" style=\"font: bold\">Je account is niet geactiveerd. Mogelijk is het account al geactiveerd of is de link verouderd</font>";
  }

  
  echo'</div>

</div>
        <div id="content_bottom" style="float: left"> </div>'
;
?>
Gewijzigd op 25/08/2011 19:03:52 door Joris van Kuijk
 
Allard Jansen

Allard Jansen

25/08/2011 19:06:14
Quote Anchor link
Het spijt met. Helaas heb ik het erg druk. Misschien kan iemand anders je helpen? Ik had je graag willen helpen. Maar helaas. Waar heb je dit 'script', eigenlijk vandaan?
 
Joris van Kuijk

Joris van Kuijk

25/08/2011 19:07:20
Quote Anchor link
van internet gedownload, is een gratis criminal source
 
Jacco Brandt

Jacco Brandt

25/08/2011 19:08:25
Quote Anchor link
Dit script is toch behoorlijk lek, je bent vatbaar voor SQL-injecties, je slaat je wachtwoorden plain-tekst op.
Ik denk dat je beter een ander kunt zoeken, of zelf PHP leren.
 
Joris van Kuijk

Joris van Kuijk

25/08/2011 19:15:24
Quote Anchor link
@jacco brandt
Ik hoef ook geen waterdicht script want dit is gewoon een maffia spel wat ik met alleen vrienden ga spelen.

Het enige wat daarvoor nog gefixt moet worden is de register.php , kan iemand mij misschien helpen de activatie eruit te halen zonder dat er allerlei errors ontstaan.
De activatie werkt namelijk niet omdat mijn host die mail niet ondersteund ben ik net achter gekomen.
 
- Aar -

- Aar -

25/08/2011 19:31:46
Quote Anchor link
Quote:
Ik hoef ook geen waterdicht script want dit is gewoon een maffia spel wat ik met alleen vrienden ga spelen.

Dan alsnog.... Als je een huis bouwt, laat je ook niet het slot achterwege.
 
Joris van Kuijk

Joris van Kuijk

25/08/2011 20:19:00
Quote Anchor link
sluit deze maar
ik ga niet verder zoeken naar de oplossing maar ga op zoek naar een betere source
 
- Aar -

- Aar -

25/08/2011 20:24:58
Quote Anchor link
Er hoeft niks gesloten te worden... Dit topic voldoet toch aan de huisregels?

Ik wens je succes naar een goede source, want naar mijn weten bestaat niet niet in de criminals-sfeer.
 
- SanThe -

- SanThe -

25/08/2011 21:54:11
Quote Anchor link
http://" . url . "/index.php?p=activa......

Waar komt de constante url vandaan?
Script = sql-injection lek.
 



Overzicht Reageren