Ocena wątku:
- 0 głosów - średnia: 0
- 1
- 2
- 3
- 4
- 5
Wstawianie Wielu Losowo Generowanych Rekordów[MySQL]
|
Liczba postów: 5
Liczba wątków: 1
Dołączył: 30-03-2011
Reputacja:
0
Witam mam taki mały problem. Mianowicie nie jestem orłem z programowania ale podstawowego inserta znam. Chciałbym się dowiedzieć czy istnieje możliwość wstawienia np. 100 rekordów gdzie wartość każdego pola będzie inna. np. mamy tabele uzytkownicy w niej trzy kolumny(id, login i haslo). Oczywiście kolumna id z automatycznym przyrostem o jeden(autoinkrement)czyli w insercie nie trzeba go wprowadzać. Jak automatycznie wygenerować 100 loginów i haseł w taki sposób, żeby się nie powtarzały oraz aby nie trzeba wstawiać stosując 100 insertów w których sam musisz to wymyślać.
Liczba postów: 2,587
Liczba wątków: 2
Dołączył: 03-04-2010
Reputacja:
58
Pętla for + generowanie losowych ciągów.
Liczba postów: 350
Liczba wątków: 93
Dołączył: 23-11-2008
Reputacja:
6
Dokładnie tak jak napisał Pedro84. Piszesz pętle for w niej ustawiasz np. powiększanie liczby dla haslo001 user001 lub (nie wiem czy tak w php można), że rzutujesz liczbę na znak (char), ewentualnie możesz jeszcze zrobić losowanie (random, w php chyba rand()  i sprawdzać czy coś się nie powtarza. Jak będziesz miał problem to pisz tutaj lub na priv.
Liczba postów: 5
Liczba wątków: 1
Dołączył: 30-03-2011
Reputacja:
0
Właściwie to nie mam pojęcia jak zmajstrować tę pętlę. Pozatym mi chodzi o to aby użyć polecenia najlepiej z poziomu phpmyadmin bezpośrednio na tabeli w bazie danych
Liczba postów: 340
Liczba wątków: 38
Dołączył: 28-04-2010
Reputacja:
15
31-03-2011, 05:33
(Ten post był ostatnio modyfikowany: 31-03-2011, 05:34 przez R_Rafalsky.)
Jak nie wiesz jak zrobić pętlę to nawet kurczakiem z programowania nie jesteś 
PHPMyAdmin nie posiada żadnych automatów. Jak chcesz to zrobić z jego poziomu to tylko "trzeba wstawiać stosując 100 insertów w których sam musisz to wymyślać"
Pseudokod:
1. Połącz się z bazą danych
2. Od jednego do 100 rób
{
$login=wylosuj();
$haslo=wylosuj();
mysql_query ("INSERT INTO Uzytkownicy VALUES... - insert znasz więc dasz se radę
}
Po szczegóły odsyłam do podstaw PHP
Jak pomogłem daj '+'. To nie boli, a ja mam satysfakcję
Any sufficiently advanced technology is indistinguishable from magic.
Liczba postów: 5
Liczba wątków: 1
Dołączył: 30-03-2011
Reputacja:
0
02-04-2011, 06:35
(Ten post był ostatnio modyfikowany: 02-04-2011, 06:36 przez smiglo85.)
Niestety Ale Nic Mi Nie Wychodzi. Wiem, że w instrukcji inserta po values muszą byc zmienne w które będą zawierać wartości wygenerowanych kodów dostępu.
Tyle co udało mi się wymyślić samemu:
<?php
mysql_connect("localhost","user","pass");
mysql_select_db("baza");
for($i=2; $i<=100; $i++)
{
$dl = 20;
$uzytkownik=md5(sha1(md5(microtime())));
$haslo=sha1(md5(md5(sha1(microtime()))))
mysql_query("insert into users (login, haslo) values ('".$uzytkownik."','".$haslo."')");
}
?>
i zastanawiam sie jak z tego wyciągnąć np 10 czy 20 znaków na hasło.
ale dopiero się tego wszystkiego ucze wiec może ktoś podrzuci mi jakis pomysł.
Liczba postów: 2,587
Liczba wątków: 2
Dołączył: 03-04-2010
Reputacja:
58
1. md5(sha1(md5(microtime()))); - Co to ma być?
2. Google.pl => php cut string
Liczba postów: 350
Liczba wątków: 93
Dołączył: 23-11-2008
Reputacja:
6
Możesz np. zrobić tak:
Kod PHP: ... $user_lp = 001; $user = 'user'.$user_lp; $passowrd_lp = 001; $password = 'password'.$passowrd_lp for ($i=0; $i<100; $++) { $user_lp++; $password_lp++; $uzytkownik = 'user'.$user_lp; $haslo = 'haslo'.$password_lp; ... } ...
Liczba postów: 5
Liczba wątków: 1
Dołączył: 30-03-2011
Reputacja:
0
(02-04-2011, 06:45)Pedro84 napisał(a): 1. md5(sha1(md5(microtime()))); - Co to ma być?
2. Google.pl => php cut string
Znalazlem na google ze w taki sposob mozna tez generować losowo ciagi znakow ale nie mam pojęcia czy to dobrze zrobiłem. ale na to wygląda że nie
Liczba postów: 2,587
Liczba wątków: 2
Dołączył: 03-04-2010
Reputacja:
58
(02-04-2011, 15:51)smiglo85 napisał(a): (02-04-2011, 06:45)Pedro84 napisał(a): 1. md5(sha1(md5(microtime()))); - Co to ma być?
2. Google.pl => php cut string
Znalazlem na google ze w taki sposob mozna tez generować losowo ciagi znakow ale nie mam pojęcia czy to dobrze zrobiłem. ale na to wygląda że nie Można, w teorii. Ale w teorii można również kopać basen szpadlem. Można? Można
Jeśli Ci nie zależy na unikalności, możesz zrobić tak:
Kod: sha1(microtime().time());
Weź pod uwagę, że do kolizji może dojść zawsze (choć w tak małym zakresie wydaje się to naprawdę bardzo mało prawdopodobne).
Zastanawiam się tylko, po co Ci te dane?
|
Podobne wątki… |
Wątek: |
Autor |
Odpowiedzi: |
Wyświetleń: |
Ostatni post |
|
Jak sprawdzić czy adres www znajduje sie w bazie mysql? |
jarekcda |
8 |
9,035 |
13-05-2017, 01:02
Ostatni post: miketodson255
|
|
Optymalizacja MySQL-a |
tomek_00 |
1 |
3,932 |
01-09-2013, 13:31
Ostatni post: hieroshima
|
|
[MySQL] Struktura bazy dla słownika |
msx83 |
2 |
3,931 |
24-08-2013, 16:26
Ostatni post: msx83
|
|
Komunikacja PHP z MySQL na serwerze |
pawstrze |
5 |
6,455 |
16-07-2013, 15:58
Ostatni post: Engine
|
|
[MySQL] wyszukiwarka problem |
darlowiak |
3 |
3,563 |
13-06-2013, 12:58
Ostatni post: darlowiak
|
Użytkownicy przeglądający ten wątek: 1 gości
|
|
Sponsorzy i przyjaciele
|
|
|