Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server > Metin2 PServer Designs, Websites & Scripts
You last visited: Today at 03:44

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[RELEASE|HOWTO] Funktionierende Registrations-Page [DOWNLOAD]

Discussion on [RELEASE|HOWTO] Funktionierende Registrations-Page [DOWNLOAD] within the Metin2 PServer Designs, Websites & Scripts forum part of the Metin2 Private Server category.

Closed Thread
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2013
Posts: 334
Received Thanks: 130
Smile [RELEASE|HOWTO] Funktionierende Registrations-Page [DOWNLOAD]

closed
methosiea is offline  
Thanks
4 Users
Old 03/13/2015, 02:18   #2
 
elite*gold: 0
Join Date: Jun 2011
Posts: 21
Received Thanks: 6
Hi du
1. es geht schon, aber bei fehlenden tabellen macht es alles nur noch schlimmer. 2. für soviel code kannst du auch table_list nehmen.

3. Sonst ist gut^^ also bis morgen #Niewiederumdieuhrzeit
spakasseosna is offline  
Old 03/13/2015, 07:13   #3
 
Yiv's Avatar
 
elite*gold: 47
Join Date: Feb 2012
Posts: 2,282
Received Thanks: 2,579
Man könnte auch einfach die Standard-Werte anpassen

Dennoch danke für das Release, ist bestimmt für einige hilfreich

MfG
Yiv is offline  
Thanks
1 User
Old 03/13/2015, 10:31   #4
wild wild son




 
Nick's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 5,828
Received Thanks: 3,369
An dieser Stelle kann direkt der neue Bereich eingeweiht werden.
(moverequested => )

Ich bin noch immer der Meinung, dass sich das Ganze hiermit am simpelsten lösen lässt;
PHP Code:
        else {
          echo
'<p class="meldung">Registrierung fehlgeschlagen: Der Account existiert bereits.</p>';
          echo 
mysql_error();
        } 


Fehlende Spalten oder Defaultwerte werden damit bspw. bei der Fehlerausgabe angegeben, so viel Tohuwabohu ist also gar nicht zwingend notwendig.

lg
Nick is offline  
Thanks
1 User
Old 03/13/2015, 10:38   #5
 
[SA]Hylight's Avatar
 
elite*gold: 0
Join Date: Oct 2011
Posts: 164
Received Thanks: 34
Quote:
Originally Posted by methosiea View Post
Hallo liebe Community,

Da ich in letzter Zeit des öfteren gefragt wurde wegen dem Registrations-Fehler: Account existierts bereits, habe ich hier nun für Einige eine Lösung (klappt nicht bei allen). Bei mir ging der Fehler damit weg. (Das übrigens 1. Release, das ich auch getestet habe ^^)

Wie dem auch sei könnt ihr euch die Registration unten im Anhang downloaden.

Für die Anderen, dies interessiert werde ich das hier nochmal dokumentieren.

Also mir wurde mitgeteilt, das der Fehler darin liegt das er die DEFAULT-Werte nicht übernimmt, sprich sie sind nicht definiert.

Ich habe das nun so gemacht.

1. Habe ich die PASSWORD()-Funktion in PHP nachgeschrieben und sie in die function.php versetzt (beim Downloadbaren wurde es in register.php versetzt)

Das sah dann so aus:
PHP Code:
function PASSWORD($x) {
    return 
'*'.strtoupper(sha1(sha1($xtrue)));

Danach habe ich mich mit der register.php beschäftigt.
Habe alle Reihen definiert, die vom User aufgerufen werden.

PHP Code:
$USER_columns = array(
    
'login' => $_POST['account'],
    
'password' => PASSWORD($userpass),
    
'real_name' => mysql_real_escape_string($_POST['uname']),
    
'email' => mysql_real_escape_string($_POST['email']),
    
'social_id' => $lcode,
    
'question1' => $sfNum,
    
'answer1' => $hashSF,
    
'create_time' => $sqlZeit,
    
'status' => $accountStatus,
    
'coins' => $regCoins,
    
'autoloot_expire' => $expireDate,
    
'safebox_expire' => $expireDate,
    
'web_aktiviert' => $aktivHash
); 
Danach habe ich alle fehlenden Tabellen aufgerufen.
PHP Code:
$SQL_query mysql_query('SELECT COLUMN_NAME, COLUMN_DEFAULT FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = \'account\' AND table_schema = \'account\' AND column_name NOT IN (\''.implode('\', \''array_keys($USER_columns)).'\')'$sqlServ); 

(SideFact: Für alle, die immer behaupten, ich sage ich wüsse alles, ich wusste nicht mehr wie ich die mysql_* funktionen definiere und dachte ich könn's ebenefalls objektorientiert machen und suchte 30 Minuten nach dem Fehler.)

Danach Prüfe ich das ganze noch:

PHP Code:
if ($SQL_query
    
/*Code*/ ;
else
    exit(
'Ein Fehler beim ausführen eines Befehls ist aufgetreten.'); 
Und danach füge ich die Reihen zusammen.

PHP Code:
if ($SQL_query)
    while (
$SQL_columns mysql_fetch_array($SQL_queryMYSQL_ASSOC))
        
$USER_columns[$SQL_columns['COLUMN_NAME']] = $SQL_columns['COLUMN_DEFAULT'];
else
    exit(
'Ein Fehler beim ausführen eines Befehls ist aufgetreten.'); 
Man kann das ganze auch Mittels array_merge machen.

Und dann kommt der CMD der vom HEN definiert wurde (etwas abgeändert)
PHP Code:
$sqlCmd 'INSERT INTO account.account ('.implode(','array_keys($USER_columns)).') VALUES (\''.implode('\',\''array_values($USER_columns)).'\')'
Somit sollte bei einigen nun der Fehler behoben sein. Schöner wär's (find' ich), wenn man es statisch löst.

Wenn's ein Fehler gibt einfach melden, aber mit Verzeihung, denn es ist 1:30 und hab' den Schluss noch schnell hingewurstelt

PS: Falls ihr andere Datenbanken in Benutzung habt, ist es wichtig das ihr diese verwendet auch bei Erweiterungen muss es umgeschrieben werden.

Virustotal:
Grüsse alle

vielen dank für das Release.
bei mir hast du ja auch nachgeschaut und ich hab den Fehler ebenfalls gefunden.
es lag bei mir daran das auf neue files gewechselt bin aber die alten Logs und Usage caches und temp dateien auf dem webhost ftp hatte.
als ich diese gelöscht habe, hab ich die normale register.php nochmal ausprobiert und es ging wunderbar ^^
[SA]Hylight is offline  
Thanks
1 User
Old 03/13/2015, 12:13   #6
 
elite*gold: 0
Join Date: Sep 2013
Posts: 491
Received Thanks: 675
Es liegt eigentlich immer an eins von beiden:
- Es fehlen Spalten in der "account" Tabelle
- Die Spalten die eingetragen werden haben keine Standardwerte
.Kibito is offline  
Thanks
1 User
Old 03/13/2015, 16:30   #7
 
elite*gold: 0
Join Date: Jul 2013
Posts: 334
Received Thanks: 130
Quote:
Originally Posted by .Yiv. View Post
Man könnte auch einfach die Standard-Werte anpassen

Dennoch danke für das Release, ist bestimmt für einige hilfreich

MfG
Das ist klar. Aber dabei scheiterts schon bei den meisten. Ich dachte zuerst auch wieso mache ich nicht einfach nur ein Query und release das, aber das hätten bereits einige nicht verstanden wies geht. Zudem Release ich ungerne was einfach so, wenn ich's noch kurz erkläre, kann ich wenigstens meine Lehrer fertigkeiten etwas verbessern

Quote:
Originally Posted by BizepsSupportAccount View Post
facepalm, einfach in PHP eine Abfrage einfügen, schauen welche Spalte, in welcher Tabelle fehlt und sie einfügen.
Oben wurd's grade beantwortet. Das ich das ganze etwas beschrieben habe, ist eigentlich nur für mich persönlich.

Quote:
Originally Posted by .JayZoN View Post
An dieser Stelle kann direkt der neue Bereich eingeweiht werden.
(moverequested => )

Ich bin noch immer der Meinung, dass sich das Ganze hiermit am simpelsten lösen lässt;
PHP Code:
        else {
          echo
'<p class="meldung">Registrierung fehlgeschlagen: Der Account existiert bereits.</p>';
          echo 
mysql_error();
        } 


Fehlende Spalten oder Defaultwerte werden damit bspw. bei der Fehlerausgabe angegeben, so viel Tohuwabohu ist also gar nicht zwingend notwendig.

lg
Für Leute die etwas Ahnung haben, ja. Man könnte damit dann auch einen Thread eröffnen. Besser ist jedoch, man schaue sich die Error-Liste auf dem Server an. Dazu müsste man sich den Pfad ausgebenlassen.

2. Ehm nein, dies ist nicht der Richtige Zeitpunkt^^. 99% aller Releases haben hier nichts verloren. Und ich habe extra ein HowTo dazwischen gequetscht. Es ist ja auch ein HowTo. Also wieso ich ^^.

PHP Code:
echo '<pre>';
print_r(error_get_last());
echo 
'</pre>'
Quote:
Originally Posted by [SA]Hylight View Post
vielen dank für das Release.
bei mir hast du ja auch nachgeschaut und ich hab den Fehler ebenfalls gefunden.
es lag bei mir daran das auf neue files gewechselt bin aber die alten Logs und Usage caches und temp dateien auf dem webhost ftp hatte.
als ich diese gelöscht habe, hab ich die normale register.php nochmal ausprobiert und es ging wunderbar ^^
Es gibt auch MySQLs die mit test_* und so. Manche etwas komisch.

Quote:
Originally Posted by .Kibito View Post
Es liegt eigentlich immer an eins von beiden:
- Es fehlen Spalten in der "account" Tabelle
- Die Spalten die eingetragen werden haben keine Standardwerte
Ja, so ist es. Ich möchte dir, auch wenn's jetzt grad' nicht pass, einen Dank aussprechen.

Quote:
Originally Posted by spakasseosna View Post
Hi du
1. es geht schon, aber bei fehlenden tabellen macht es alles nur noch schlimmer. 2. für soviel code kannst du auch table_list nehmen.

3. Sonst ist gut^^ also bis morgen #Niewiederumdieuhrzeit
Schön, dass du mir in den Rücken fällst, nein Spass, aber ich habe dir das nun ein wenig beigebracht und nun so.

1. Es ist auch nicht für fehlende Tabellen gedacht.

2. table_list ist eine Funktion, die PHP zukünftig eigentlich nicht mehr unterstützen möchte.

3. Also, war heute mal lustig, oder Ich sollte Lehrer werden ^^
methosiea is offline  
Old 03/13/2015, 21:25   #8

 
#dynastie's Avatar
 
elite*gold: 0
Join Date: May 2013
Posts: 593
Received Thanks: 467
Tut mir Leid, aber hiermit hast du entgültig bewiesen, dass du fast keine Ahnung hast.
Du äußerst dich so oft hier von wegen, dass du gar keine große Ahnung von den Datenbanken von Metin2 etc. hast aber versuchst dann irgendwie ein bisschen Aufmerksamkeit mit halbfertigen Sachen zu ergattern. Finde das echt unglaublich.

Außerdem laden sich die Meisten direkt ein ganzes CMS wo relativ gute Scripts dabei sind (HenCMS z.B.). Dazu kommt, dass deine Codes, die ich bisher hier gesehen haben, wirklich unter aller Sau sind. Vorallem jetzt diese Modifikation vom HenCMS.

Lern' ein wenig und komm in 2-3 Jahren wieder. Damit würdest du wirklich jedem ein Gefallen tun. Möchte dich da nicht persönlich angreifen aber so langsam..

Grüße
#dynastie is offline  
Thanks
1 User
Old 03/13/2015, 21:51   #9
 
elite*gold: 0
Join Date: Jul 2013
Posts: 334
Received Thanks: 130
Quote:
Originally Posted by #dynastie View Post
Tut mir Leid, aber hiermit hast du entgültig bewiesen, dass du fast keine Ahnung hast.
Du äußerst dich so oft hier von wegen, dass du gar keine große Ahnung von den Datenbanken von Metin2 etc. hast aber versuchst dann irgendwie ein bisschen Aufmerksamkeit mit halbfertigen Sachen zu ergattern. Finde das echt unglaublich.

Außerdem laden sich die Meisten direkt ein ganzes CMS wo relativ gute Scripts dabei sind (HenCMS z.B.). Dazu kommt, dass deine Codes, die ich bisher hier gesehen haben, wirklich unter aller Sau sind. Vorallem jetzt diese Modifikation vom HenCMS.

Lern' ein wenig und komm in 2-3 Jahren wieder. Damit würdest du wirklich jedem ein Gefallen tun. Möchte dich da nicht persönlich angreifen aber so langsam..

Grüße
Hallo, das viele dieses HEN benutzen ist eine klare Sache. Sonst gäbe es nicht jeden Tag, diese Frage über ein' Problem dazu. ich habe 2 Mal gesagt, dass ich keine Ahnung von der Metin2 Datenbank habe. Sonst wär's schon wenig komisch.

Das ich Halbfertige-Sachen released habe ist auch Fakt, aber das gehört sicherlich nicht dazu.

Das ist sicherlich nicht unter aller Sau. Diesen Teil, hätte man schöner lösen können:

PHP Code:
while ($SQL_columns mysql_fetch_array($SQL_queryMYSQL_ASSOC))
        
$USER_columns[$SQL_columns['COLUMN_NAME']] = $SQL_columns['COLUMN_DEFAULT']; 
Aber das habe ich sogar angesprochen. Erklär mir mal bitte etwas genauer wo du's unter aller Sau findest und sage dir weshalb es so ist, aber so nicht. Könnte mir vorstellen das du vllt. das neue definieren meinst. Jedoch muss man das machen, damit es wirklich mit jeder PHP-Konfiguration funktioniert. Zu jedem der Query, denke mal die hätte man nicht besser lösen können.

...verwende man SHOW ist dies keine kompatible Lösung

Zuerst, solltest du überlegen, dass's einwandfrei läuft, habe dazu schlecht Zeit komplett selbst Erstelltes zu releasen, weil ich dazu keine Zeit habe.
Grüsse dich
methosiea is offline  
Old 03/15/2015, 12:52   #10



 
.aNNdii#'s Avatar
 
elite*gold: 1
Join Date: Aug 2008
Posts: 7,744
Received Thanks: 3,606
Arrow Metin2 PServer Guides & Strategies -> Metin2 PServer Designs, Websites & Scripts

#moved
.aNNdii# is offline  
Closed Thread

Tags
account existiert bereits, metin2, mt2 regipage problem, regi


Similar Threads Similar Threads
Registrations Page
01/21/2014 - Metin2 Private Server - 2 Replies
Hey, ich suche eine ordentliche Regi Page für meinen Server. Hab schon YT und hier gesucht aber entweder Links down oder sie war schlicht und einfach kacke! - Einfach die Regi Page mir Privat senden oder hier verlinken in dem Theard, gebe auch ein Thanks :)
Flyff Registrations page problem
08/28/2011 - Flyff Private Server - 7 Replies
Hallo, Ich habe gerade anhand dieses videos Flyff Registerpage machen - YouTube versucht eine registrieguns page zu erstellen. Mein problem ist, das wenn ich die "web.createacc.sql" datei rein machen und auf ausführen klicke, diese fehlermeldung kommt: Meldung 208, Ebene 16, Status 6, Prozedur webCreateAcc, Zeile 22 Ungültiger Objektname 'dbo.webCreateAcc'. Kann mir jemand dabei bitte helfen?
FlyFF PServer Registrations-Page
10/02/2010 - Flyff Private Server - 3 Replies
Hi, ich glaube ich bin hier falsch, aber egal :D Also, zu meiner Frage. Ich habe einen eigenen FlyFF PServer. Aber es sollen ja auch andere Leute drauf spielen können. Jezzz hab ich die Frage: Wie macht man am besten eine Registrations-Page für meinen PServer. Er läuft über Hamachi. Ich hab auch schon ein bisschen gegoogelt, hab aba nix gefunden =( LG P.S.: Threas war sinnlos ;) Habs schon geschafft <.< Kann bitte geclosed werden :)
Registrations Page
10/10/2009 - Metin2 Private Server - 0 Replies
Hi, ich habe leider vergessen mir den Link zum VTut der Accountpage erstellung zu speichern. Wenn mir jemand den Link zum VTut schickt bekommt er ein Danke! MfG Kevin



All times are GMT +2. The time now is 03:44.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.