V14 Register Script für Gms [Homepage Script]

05/20/2011 17:23 Trafalgar†Law#1
Naja, Meine frage wär wie man nen V14 Register Page macht wo man wenn man registriert sofort Gm ist =D.

PS: für ein ein Test Server ;3

Trafalgar†Law ~
05/20/2011 17:36 Pumbaaa#2
schreib die prozedur um, da wird loginauth standart auf F gesetzt
05/20/2011 17:57 Freddie_Faulisch#3
USE [ACCOUNT_DBF]
GO
/****** Object: StoredProcedure [dbo].[webCreateAcc] Script Date: 08/17/2009 21:30:28 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[webCreateAcc]
@account VARCHAR(15),
@password VARCHAR(36),
@email VARCHAR(120)

AS

SET NOCOUNT ON

DECLARE @DateActivated AS CHAR(8)

IF NOT EXISTS (SELECT account FROM ACCOUNT_TBL WHERE account = @account) BEGIN
INSERT INTO ACCOUNT_TBL (account, [password], id_no2, isuse, member, realname)
VALUES (@account, @password, @password, 'T', 'A', 'F')

SET @DateActivated = CONVERT(CHAR(8), GETDATE()-1, 112 ) --Is the date today - 1
--UPDATE ACCOUNT_TBL_DETAIL SET BlockTime = @DateYesterday WHERE account = @userid
--INSERT INTO ACCOUNT_TBL_DETAIL (account, gamecode, tester, m_chLoginAuthority, regdate, BlockTime, EndTime, WebTime, isuse)
-- VALUES (@account, 'A000', '2', 'P', GETDATE(), '20990101', '20990101', '20050101', 'O')

INSERT INTO ACCOUNT_TBL_DETAIL (account, gamecode, tester, m_chLoginAuthority, regdate, BlockTime, EndTime, WebTime, isuse, email)
VALUES (@account, 'A000', '2', 'P', GETDATE(), @DateActivated, '20990101', '20050101', 'O', @email)

END
--ELSE BEGIN
--print '->Account exists = '
--print @account
05/20/2011 18:00 rädsun#4
Quote:
INSERT INTO ACCOUNT_TBL_DETAIL (account, gamecode, tester, m_chLoginAuthority, regdate, BlockTime, EndTime, WebTime, isuse, email)
VALUES (@account, 'A000', '2', 'P', GETDATE(), @DateActivated, '20990101', '20050101', 'O', @email)
Wichtig ist eigentlich nur das rotmakierte, dort wird eben definiert, dass, wenn man einen Acc erstellt die LoginAuth = P, also GM Level ist.

Sonst ist es das exakt das selbe wie bei einem normalen Registerscript
05/20/2011 18:03 damir123#5
P = ist aber die Admin authorität ^^
05/20/2011 18:11 Trafalgar†Law#6
Naja habs mal in meine DB rein gemacht, aber wenn ich mich registriere und mich einlogge habe ich trotzdem keine Rechte. ^^
05/20/2011 18:13 .Scy#7
du musst die index.php oder welche php auch immer fürs registrieren da ist ändern^^
05/20/2011 18:28 Trafalgar†Law#8
Wie meinst du das denn? O:
Also ich kann ja schon Registrieren und ingame gehen nur ich habe dann keine Rechte :D

Naja kannst du meine register.php mal bearbeiten ;3 Ich check da garnichts durch :D

hier meine register.php ;3

Danke im Voraus o:
05/21/2011 02:50 rädsun#9
Hat wie gesagt rein gar nichts mit deinem Registerscript zu tun, müsste auch (so wie es auf den ersten Blick scheint) funktionieren.

Was du ändern musst ist deine webcreateacc.dbo die du erstellt haben müsstet, die musst dazu musst du irgendwann mal eine SQL Abfrage gemacht haben und die tbl erstellt haben.
Am einfachsten ist es die webcreateacc.dbo in deiner Datenbank (müsste sich in der ACCOUNT_DBF befinden) zu löschen und die Abfrage neu zu machen, wie oben schon gepostet..

Quote:
USE [ACCOUNT_DBF]
GO
/****** Object: StoredProcedure [dbo].[webCreateAcc] Script Date: 08/17/2009 21:30:28 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[webCreateAcc]
@account VARCHAR(15),
@password VARCHAR(36),
@email VARCHAR(120)

AS

SET NOCOUNT ON

DECLARE @DateActivated AS CHAR(8)

IF NOT EXISTS (SELECT account FROM ACCOUNT_TBL WHERE account = @account) BEGIN
INSERT INTO ACCOUNT_TBL (account, [password], id_no2, isuse, member, realname)
VALUES (@account, @password, @password, 'T', 'A', 'F')

SET @DateActivated = CONVERT(CHAR(8), GETDATE()-1, 112 ) --Is the date today - 1
--UPDATE ACCOUNT_TBL_DETAIL SET BlockTime = @DateYesterday WHERE account = @userid
--INSERT INTO ACCOUNT_TBL_DETAIL (account, gamecode, tester, m_chLoginAuthority, regdate, BlockTime, EndTime, WebTime, isuse)
-- VALUES (@account, 'A000', '2', 'F', GETDATE(), '20990101', '20990101', '20050101', 'O')

INSERT INTO ACCOUNT_TBL_DETAIL (account, gamecode, tester, m_chLoginAuthority, regdate, BlockTime, EndTime, WebTime, isuse, email)
VALUES (@account, 'A000', '2', 'Z', GETDATE(), @DateActivated, '20990101', '20050101', 'O', @email)

END
--ELSE BEGIN
--print '->Account exists = '
--print @account
--END
Das ausschlaggebende ist lediglich der Buchstabe, Z steht für Admin, P für GM und F für normalen User. Beliebig ändern, das ganze in eine neue Abfrage in deiner Datenbank packen, Abfrage ausführen und dann sollte automatisch jeder der sich registriert mit GM/Admin Rechten gesegnet sein xD
05/21/2011 17:31 Meikbrosoft#10
Quote:
Originally Posted by rädsun View Post
Hat wie gesagt rein gar nichts mit deinem Registerscript zu tun, müsste auch (so wie es auf den ersten Blick scheint) funktionieren.

Was du ändern musst ist deine webcreateacc.dbo die du erstellt haben müsstet, die musst dazu musst du irgendwann mal eine SQL Abfrage gemacht haben und die tbl erstellt haben.
Am einfachsten ist es die webcreateacc.dbo in deiner Datenbank (müsste sich in der ACCOUNT_DBF befinden) zu löschen und die Abfrage neu zu machen, wie oben schon gepostet..



Das ausschlaggebende ist lediglich der Buchstabe, Z steht für Admin, P für GM und F für normalen User. Beliebig ändern, das ganze in eine neue Abfrage in deiner Datenbank packen, Abfrage ausführen und dann sollte automatisch jeder der sich registriert mit GM/Admin Rechten gesegnet sein xD
ähmmm xD P = Admin L,M,N = GM :) oder irre ich mich?
05/21/2011 17:46 rädsun#11
Bei mir ist Z Admin, P GM, aber das ist ja auch irelevant^^ Kommt auf die DB an.