YourWBB


yourWBB » yourWBB Misc * » Das Proggen » MySQL und PHP » Anmeldungs Skript » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 2.343 Views | | Thema zu Favoriten hinzufügen

Neues Thema erstellen Antwort erstellen

Zum Ende der Seite springen Anmeldungs Skript
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Madd Eye Madd Eye ist männlich
PHP/VB.Net/JS/C++ Programmierer


images/avatars/avatar-5268.jpg

Dabei seit: 12.04.08
Beiträge: 108
Fähigkeiten: WBB3 Fortgeschritten
Herkunft: Kennt eh kein Schwein
Forenversion: 3.0

Augenzwinkern Anmeldungs Skript Antworten Zitieren Editieren Melden       UP

ja ich bins mal wieder ^^


Also hier mein Skript ( der fehler: Man kann sich nicht anmelden egal was man macht):

php:
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:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
<?php


define('INSIDE'true);
$ugamela_root_path './';
include($ugamela_root_path 'extension.inc');
include($ugamela_root_path 'common.'.$phpEx);


define('ADMINEMAIL',"Anmeldung@materia-online.de");
define('GAMEURL',"http://".$_SERVER['HTTP_HOST']."/");

includeLang('reg');


function sendpassemail($emailaddress$password) {

$gamename "Materia - Online";
$staff "Materia - Online Team";
$email ADMINEMAIL;
$gameurl GAMEURL;

$email "($gameurl) Materia - Online Anmeldung!.

Passwort: $password

Euer, $staff.
$gameurl";

$status mymail($emailaddress"Materia - Online.de"$email);
return $status;     
}

function mymail($to$title$body$from '') {

  $from trim($from);

  if (!$from) {
     $from '<'ADMINEMAIL .'>';
   }
       
 $rp    ADMINEMAIL;
 $org    GAMEURL;
 $mailer 'PHP';

  $head  '';
  $head  .= "Content-Type: text/plain \r\n";
  $head  .= "Date: "date('r'). " \r\n";
  $head  .= "Return-Path: $rp \r\n";
  $head  .= "From: $from \r\n";
  $head  .= "Sender: $from \r\n";
  $head  .= "Reply-To: $from \r\n";
  $head  .= "Organization: $org \r\n";
  $head  .= "X-Sender: $from \r\n";
  $head  .= "X-Priority: 3 \r\n";
  $head  .= "X-Mailer: $mailer \r\n";

  $body  str_replace("\r\n""\n"$body);
  $body  str_replace("\n""\r\n"$body);


  
}

if($_POST){

    /*include("common.php");*/

    $errors 0;
    $errorlist "";

    if(!is_email($_POST['email'])){
        
        $errorlist .= "\"".$_POST['email']."\" ".$lang['error_mail'];
        $errors++;
        
    }
    if(!$_POST['hplanet']){
        $errorlist .= $lang['error_hplanet'];
        $errors++;
    }
    if(preg_match("/[^A-z0-9_\-]/"$_POST['hplanet'])==1) {
        $errorlist .= $lang['error_hplanetnum'];
        $errors++;
    }
    if(!$_POST['character']){
        $errorlist .= $lang['error_character'];
        $errors++;
    }
    if (preg_match("/[^A-z0-9_\-]/"$_POST['character'])==1){
        $errorlist .= "Bu Tur Karakterleri Kullanmayiniz.<br />";
        $errors++;
    }
    if($_POST['v'] != 2){
        $errorlist .= $lang['error_v'];
        $errors++;
    }
    if($_POST['agb'] != 'on'){
        $errorlist .= $lang['error_agb'];
        $errors++;
    }
    $user_array doquery("SELECT `username` FROM {{table}} WHERE `username` = '".mysql_escape_string($_POST['character'])."' LIMIT 1","users",true);
    
    if($user_array){
        $errorlist .= $lang['error_userexist'];
        $errors++;
    }
    //Comprueba el E-Mail
    $user_array doquery("SELECT `email` FROM {{table}} WHERE `email` = '{$_POST['email']}' LIMIT 1","users",true);
    
    if($user_array){
        $errorlist .= $lang['error_emailexist'];
        $errors++;
    }
    
    if($_POST['sex'] != '' && $_POST['sex'] != 'F' && $_POST['sex'] != 'M'){
        $errorlist .= $lang['error_sex'];
        $errors++;
    }
    if($errors != 0){
        message($errorlist,$lang['Register']);
        
    }else{
        $newpass $_POST['haslo']; 
        }
        $md5newpass md5($newpass);
        doquery("INSERT INTO {{table}} SET 
            `username`='{$_POST['character']}',
            `password`='{$md5newpass}',
            `email`='{$_POST['email']}',
            `email_2`='{$_POST['email']}',
            `sex`='{$_POST['sex']}',
            `id_planet`='',
            `register_time`='".time()."'"
            ,'users');
        $iduser_array doquery("SELECT `id` FROM {{table}} WHERE `username` = '{$_POST['character']}' LIMIT 1","users",true);
        $iduser $iduser_array['id'];
        while(!isset($newpos_checked)){
            
            //$g = round(rand(1,9));
            //$s = round(rand(1,499));
            //$p = round(rand(4,12));
            
            $id_g $game_config['id_g'];
            $id_s $game_config['id_s'];
            $id_p $game_config['id_p'];
            
            for($x=$id_g;$x<=10;$x++)
            {
                for($y=$id_s;$y<=500;$y++)
                {                                    
                    for($z=id_p;$z<=4;$z++)
                    {
                        $g $x;
                        $s $y;
                        $p round(rand(4,12));
                        
                        
                        switch($id_p)
                        {
                            case 1$id_p $id_p +1;break;
                            case 2$id_p $id_p +1;break;
                            case 3: if($id_s == 499)
                                    {
                                        $id_g $id_g +1;    
                                        $id_s 1;
                                        $id_p 1;break;
                                    }else 
                                    $id_p =1;
                                    $id_s=$id_s+1;break;
                                    
                        }
                        
                        
                        
                        break;
                    }
                    break;
                }
                break;
            }
            
            
            doquery("UPDATE {{table}} SET `config_value`='{$id_g}' WHERE `config_name`='id_g'",'config');
            doquery("UPDATE {{table}} SET `config_value`='{$id_s}' WHERE `config_name`='id_s'",'config');
            doquery("UPDATE {{table}} SET `config_value`='{$id_p}' WHERE `config_name`='id_p'",'config');
            
            $newpos doquery("SELECT * FROM {{table}} WHERE `galaxy` = '$g' AND `system` = '$s' AND `planet` = '$p'  LIMIT 1","galaxy",true);
            
            if($newpos["id_planet"] == "0"){$newpos_checked true;}
            
            if(!$newpos){
                make_planet($g,$s,$p,$iduser,$_POST['hplanet']);
                $newpos_checked true;
            }
            
        }
        $diameter = ($game_config['initial_fields'] ^ (14 1.5)) * 75 ;
        doquery("UPDATE {{table}} SET
            diameter='{$diameter}',
            field_max='{$game_config['initial_fields']}'
            WHERE id_owner='{$iduser}' LIMIT 1",'planets');

        $idplanet_array doquery("SELECT `id` FROM {{table}} WHERE id_owner='{$iduser}' LIMIT 1",'planets',true);
        
        $idplanet $idplanet_array['id'];
        doquery("UPDATE {{table}} SET
            id_planet='{$idplanet}',
            current_planet='{$idplanet}',
            galaxy='{$g}',
            system='{$s}',
            planet='{$p}'
            WHERE `id` = '{$iduser}' LIMIT 1","users");
        doquery("UPDATE {{table}} SET config_value=config_value+1 WHERE config_name='users_amount' LIMIT 1","config");
        
        //nos fijamos si es una cuenta admin
        //        if($_POST['character'] == 'admin'){
        //    doquery("UPDATE {{table}} SET `authlevel` = '1' WHERE `username` = 'admin' LIMIT 1","users");
        //}
        
        
        if(sendpassemail($_POST['email'],"$newpass"))
        message($lang['thanksforregistry']." ({$_POST["email"]})",$lang['reg_welldone']);
        else
        
        message($lang['thanksforregistry']." ({$_POST["email"]})",$lang['reg_welldone']);
        
    }

else{ 

    $parse $lang;
    $page parsetemplate(gettemplate('registry_form'), $parse);
    
    display($page,$lang['registry']);
}


?>



Woran kann liegen?
25.11.08 21:42 Madd Eye ist offline E-Mail WWW Finden Als Freund hinzufügen
[kamui]
~


images/avatars/avatar-4963.gif

Dabei seit: 27.04.05
Beiträge: 2.992

Antworten Zitieren Editieren Melden       UP

Also bei so einem riesen Script kann dir niemand einfach so Hilfestellung geben.

Außerdem musst du lernen, selbst deine Fehler in Scripten zu finden (später willst du ja nicht immer deine eigenen Scripte offenlegen). Folgendes ist dabei zu beachten

korrektes einrücken
So findest du Fehler von falsch gesetzten geschweiften Klammern ( { und } ). Bei dir vermisst man das bei den Funktionen und auch beim unteren Code - so wird beim Betrachten direkt der Zusammenhang deutlich, also welcher Code konkret von welchen (if-)Bedingungen abhängig ist.

langsame Fehlersuche mit die
Irgendwo in deinem Code ist der Wurm drin? Geh langsam dein Script von oben nach unten (so wie der Server) durch, und baue an sinnvollen Stellen die's ein. Dann siehst du, ob der Code bis dahin ausgeführt wurde. Nach und nach kommst du dann der Stelle, die Probleme verursacht immer näher.

arbeiten mit Queries
Hier ist es zu empfehlen, dir den Query einfach mal als Plaintext ausgeben zu lassen (evtl. mit die), dann siehst du, ob hier evtl. eine Variable falsch benannt (und nicht gefunden) wurde, oder ähnlicher Fehler vorliegt.
25.11.08 22:40 [kamui] ist offline Finden Als Freund hinzufügen
Madd Eye Madd Eye ist männlich
PHP/VB.Net/JS/C++ Programmierer


images/avatars/avatar-5268.jpg

Dabei seit: 12.04.08
Beiträge: 108
Fähigkeiten: WBB3 Fortgeschritten
Herkunft: Kennt eh kein Schwein
Forenversion: 3.0

Themenstarter Thema begonnen von Madd Eye
Antworten Zitieren Editieren Melden       UP

Ja ist weiß ich ja hab auch die meisten fehler reaugefunden nur

Eigentlich ist kein Fehler mehr vorhanden aber er schreibt trotzdem nicht
26.11.08 14:17 Madd Eye ist offline E-Mail WWW Finden Als Freund hinzufügen
Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » yourWBB Misc * » Das Proggen » MySQL und PHP » Anmeldungs Skript