Toon posts:

[SQL] Toevoegen users met password

Pagina: 1
Acties:
  • 135 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil graag in mijn online database al mijn debiteuren toevoegen met een wachtwoord.
Om nou al mijn 1500 debiteuren met de hand in te voeren via PHPAdmin zie ik niet zo zitten...
Ik zou graag een een query o.i.d hebben zodat ik debiteur 1 t/m 1500 kan invoegen met allemaal hetzelfde password (dit kunnen ze dan naderhand wijzigen, dit is geen probleem).

Maar nou komt het, ik ben niet zo'n ster in SQL, het zal wel iets met zijn als: INSERT "1 tot en met 1500" "met password X"

Kan iemand mij duidelijkheid geven over hoe ik dit moet toevoegen in mijn SQL database?

  • BoomSmurf
  • Registratie: Maart 2003
  • Laatst online: 23:42

BoomSmurf

Am-Ende!

In de SQL-92 standaard is geen 'create user' user commando. Volgens mij is PHPMyAdmin echter specifiek voor MySQL, en een simpele google op je vraag geeft het volgende antwoord: MySQL Manual | 5.5.4 Adding New User Accounts to MySQL

Verder raad ik je aan in het vervolg eerst Google te raadplegen.

[ Voor 200% gewijzigd door BoomSmurf op 21-02-2004 14:01 . Reden: url was verkeerd ]


Verwijderd

Topicstarter
Het gaat niet over PhpAdmin zelf, ik gebruik de database om users te authoriseren en in te laten loggen op een beveiligd gedeelte van mijn site.

Nou staan er al wat users in, maar ik wil er graag automatisch (dus direct in de database, zonder de Admin-pagina van het script te gebruiken) user 1 t/m 1500 toevoegen.

  • BoomSmurf
  • Registratie: Maart 2003
  • Laatst online: 23:42

BoomSmurf

Am-Ende!

Dus je wilt user voor je website opslaan in je database? Dan slaat IMHO je topictitel nergens op ;)

Met 1 query kun je over het algemeen maar 1 record invoegen (sommige RDBMS'en kunnen er meerdere met 1 query maar of MySQL dit ondersteund is de vraag). Staan deze usernames al ergens in een tabel? Of wat? En moet het wachtwoord voor al deze mensen hetzelfde zijn?

En wat is de datadefinitie van je usertabel?

[ Voor 7% gewijzigd door BoomSmurf op 21-02-2004 14:09 ]


Verwijderd

Topicstarter
BoomSmurf schreef op 21 februari 2004 @ 14:07:
Dus je wilt user voor je website opslaan in je database? Dan slaat IMHO je topictitel nergens op ;)

Met 1 query kun je over het algemeen maar 1 record invoegen (sommige RDBMS'en kunnen er meerdere met 1 query maar of MySQL dit ondersteund is de vraag). Staan deze usernames al ergens in een tabel? Of wat? En moet het wachtwoord voor al deze mensen hetzelfde zijn?

En wat is de datadefinitie van je usertabel?
Wat een moeilijke taal allemaal :?
(Wat zijn RDBMS's?)
Ik wil dus meerdere records toevoegen met allemaal een verschillende username (1 t/m 1500) en met allemaal hetzelfde wachtwoord.

Verwijderd

dat kan heel eenvoudig met een php/asp scriptje.

  • BoomSmurf
  • Registratie: Maart 2003
  • Laatst online: 23:42

BoomSmurf

Am-Ende!

Verwijderd schreef op 21 februari 2004 @ 14:13:
[...]


Wat een moeilijke taal allemaal :?
(Wat zijn RDBMS's?)
Ik wil dus meerdere records toevoegen met allemaal een verschillende username (1 t/m 1500) en met allemaal hetzelfde wachtwoord.
Een RDBMS is een Relational Database Management System, ofwel een moderne SQL database server, in dit geval MySQL. Al is het de vraag of je die wel Relational mag noemen. Maar goed, ga eens een boek 'Introductie Databases' lezen of zo :)

Je zult hier hoogstwaarschijnlijk toch een scriptje met een insert loop voor moeten brouwen. Pseudo-code (is geen enkele taal - bedoeld om je een idee te geven hoe het moet):

code:
1
2
3
4
for username = 1 to 1500 do
  MySQL->Query 'INSERT INTO WEBSITEUSERS (USERNAME, PASSWORD) VALUES (:USERNAME, "wachtwoord")'
  MySQL->Parameter 'USERNAME' = username
  MySQL->ExecuteQuery


Dat zul je dan effe in PHP moeten zetten of zo en uit te voeren. Het is maar om je een idee te geven :)

Excuses voor het verneuken van de layout :)

[ Voor 6% gewijzigd door BoomSmurf op 21-02-2004 14:19 ]


  • BoomSmurf
  • Registratie: Maart 2003
  • Laatst online: 23:42

BoomSmurf

Am-Ende!

Verwijderd schreef op 21 februari 2004 @ 14:18:
dat kan heel eenvoudig met een php/asp scriptje.
Zeg dan niets |:(

Volgens mij is dat zo'n beetje het antwoord op elke vraag die in PW gesteld wordt ;)

  • TheLunatic
  • Registratie: April 2001
  • Laatst online: 16-08-2025

TheLunatic

Ouwe boxen.

Of met een random programmeertaal een textfile laten genereren met daarin de tekst:

INSERT INTO table VALUES ("user-a", "password");

Zodat je dus een tekstfile krijgt met 1500 keer die regel, steeds met 'n andere username.

Delphi:
1
2
3
4
5
6
begin
  for i:=1 to 1500 do
    begin
      WriteLn(fTextfile, 'INSERT INTO table VALUES("' + IntToStr(i) + '", "temppass")');
    end;
end;


niet getest, zou moeten werken

[ Voor 10% gewijzigd door TheLunatic op 21-02-2004 14:28 ]

Mother, will they like this song?


  • Suepahfly
  • Registratie: Juni 2001
  • Laatst online: 21-04 16:00
Ik begrijp dat je al een database hebt met gebruikers.
Dan moet je eerst een wachtwoord veld toevoegen aan de tabel
code:
1
ALTER TABLE table ADD wachtwoord VARCHAR(255)
iets in die geest
En dan
code:
1
UPDATE tabel SET wachtwoord = password('wachtwoord')

Zoiets dus

Verwijderd

Zoals the lunatic zegt; een (php)script tekst laten genereren, dus ene resultaat in je browser als dit:

insert into tabel (naam, pw) values ('user_1', 'wachtwoord_eventueel_random_of_md5';
insert into tabel (naam, pw) values ('user_2', 'wachtwoord_eventueel_random_of_md5';
insert into tabel (naam, pw) values ('user_3', 'wachtwoord_eventueel_random_of_md5';
etc...

Dit kun je vast wel bewerkstelligen door iets als:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// gebruikersnamen
// zorgen dat deze gevuld is met de namen of eventueel namen genereren
// dus vullen met user1, user2, user3, etc.. Kan makkelijk met loopje.
$gebruikersnamen = array(); 

// wachtwo(o)rd(en)
$passwords = array(); // vullen met de wachtwoorden
// of een vast wachtwoord gebruiken, dan ook onderstaande query iets wijzigen
$passwords = '1234ab';

// dan de insert queries genereren en weergeven
for($i=0;$i<count($gebruikersnamen);$i++)
{
  echo 'INSERT INTO tabelnaam (naam, pw) VALUES (\'' . $gebruikersnamen . '\', \'' . $passwords[$i] . '\')';
  echo '<br>';
}

// de gegenereerde pagina selecteren>kopieren en in de je adminprog. dumpen..
succes!

[ Voor 33% gewijzigd door Verwijderd op 21-02-2004 15:48 ]


Verwijderd

Topicstarter
Verwijderd schreef op 21 februari 2004 @ 15:45:
Zoals the lunatic zegt; een (php)script tekst laten genereren, dus ene resultaat in je browser als dit:

insert into tabel (naam, pw) values ('user_1', 'wachtwoord_eventueel_random_of_md5';
insert into tabel (naam, pw) values ('user_2', 'wachtwoord_eventueel_random_of_md5';
insert into tabel (naam, pw) values ('user_3', 'wachtwoord_eventueel_random_of_md5';
etc...

Dit kun je vast wel bewerkstelligen door iets als:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// gebruikersnamen
// zorgen dat deze gevuld is met de namen of eventueel namen genereren
// dus vullen met user1, user2, user3, etc.. Kan makkelijk met loopje.
$gebruikersnamen = array(); 

// wachtwo(o)rd(en)
$passwords = array(); // vullen met de wachtwoorden
// of een vast wachtwoord gebruiken, dan ook onderstaande query iets wijzigen
$passwords = '1234ab';

// dan de insert queries genereren en weergeven
for($i=0;$i<count($gebruikersnamen);$i++)
{
  echo 'INSERT INTO tabelnaam (naam, pw) VALUES (\'' . $gebruikersnamen . '\', \'' . $passwords[$i] . '\')';
  echo '<br>';
}

// de gegenereerde pagina selecteren>kopieren en in de je adminprog. dumpen..
succes!
Ik ben dus écht een n00b op het gebied van php/sql, dus een "loopje" is voor mij abacadabra, al snap ik het principe wel.

Wat hulp (eventueel een fijn scriptje :+ ) zou wel fijn zijn.

Ik heb in mijn database (naam: lwdb) een tabel (naam: authuser), hierin bevinden zich records met de volgende velden:
id, uname, passwd, team, level, status, lastlogin en logincount

De tabel ziet er in myphpadmin dus als volgt uit:
Afbeeldingslocatie: http://www.libertywellness.nl/tabel.jpg

Hoe komt mijn import-scriptje er dan (ongeveer) uit te zien?

(Sorry, ik heb écht de ballen verstand van deze taal, maar doe écht mijn best)

  • Skaah
  • Registratie: Juni 2001
  • Niet online
Zoals ivy, maar regel 14 wordt:
PHP:
1
  echo 'INSERT INTO authuser (unaam,password) VALUES (\'' . $gebruikersnamen . '\', \'' . md5($passwords[$i]) . '\')';
Pagina: 1