produkt id=1 bedzie mial id_losowe=231
produkt id=2 bedzie mial id_losowe=8721
produkt id=3 bedzie mial id_losowe=21
Zrobiłem tak:
Kod
$numbers = range(1, $ilosc_produktow);
shuffle($numbers);
$ids = $this->pobierz_id_wszystkich_produktow();
foreach($ids as $id => $dane){
$id_wylosowane = array_shift($numbers);
update `'.$this->nazwa_bazy.'` set `id_losowe`= "'.$id_wylosowane.'" where `id`='.$id.' limit 1
}
shuffle($numbers);
$ids = $this->pobierz_id_wszystkich_produktow();
foreach($ids as $id => $dane){
$id_wylosowane = array_shift($numbers);
update `'.$this->nazwa_bazy.'` set `id_losowe`= "'.$id_wylosowane.'" where `id`='.$id.' limit 1
}
ale zapytanie wykonuje sie za dlugo. Moze da sie to zrobic przez mysql zeby pobral wszystkie id jakie sa i przypisal je do id_losowe ale zeby sie nie powtarzaly, mam nadzieje ze nie zamotalem za bardzo.