Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] PW wysyłanie masowych wiadomości
Forum PHP.pl > Forum > Przedszkole
Nikk
Hej,
Nie wiem jak napisać skrypt który bedzie wysyłał wiadomości do wszystkich użytkowników w bazie, na razie zrobiłem taki kod ale nie działa. Brakuje mi pomysłu "Jak to zrobić". Proszę o pomoc/mała porade
  1. while(mysql_fetch_array("SELECT `login` FROM `User`"))
  2. {
  3. $i=0;
  4. $row=mysql_fetch_array("SELECT `login` FROM `User`");
  5. $do=$row[$i];
  6. $i++;
  7. mysql_query("INSERT INTO wiadomosci SET wiad_od='$login', wiad_do='$do', wiad_temat='$temat', wiad_tresc='$tresc', wiad_data='$data', wiad_przeczytane='0' ");
  8. echo '</br></br>Wysłano wiadomość</br>';
  9. }
Rysh
Najpierw poberasz id wszystkich użytkowników, następnie tworzysz jeden wielki INSERT i tyle.
Nikk
Napisałem taki kod, dziękuje za pomoc
  1. $zap=mysql_query("SELECT login FROM `User` ");
  2. while($row=mysql_fetch_assoc($zap))
  3. {
  4. mysql_query("INSERT INTO XXXXX aa='".$row['login']."' XXXX ");
  5. }
Rysh
Cytat(Nikk @ 21.12.2014, 14:32:57 ) *
Napisałem taki kod, dziękuje za pomoc
  1. $zap=mysql_query("SELECT login FROM `User` ");
  2. while($row=mysql_fetch_assoc($zap))
  3. {
  4. mysql_query("INSERT INTO XXXXX aa='".$row['login']."' XXXX ");
  5. }

Tylko taki kod nie jest w ogóle optymalny. W takim przypadku zrobisz tyle zapytań do bazy ile masz użytkowników, natomiast możesz to ograniczyć do kilku zapytań, gdzie skrypt wykona się o wiele szybciej.
viking
http://dev.mysql.com/doc/refman/5.0/en/insert-select.html pewnie cię też zainteresuje
Nikk
Dzięki za pomoc udało się, nie wiedziałem że nastapiły takie zmiany w zapytaniach sql w php od wersji 4.0( nowe/udoskonalone zapytania bardzo ułatwiają pracę z bazą) . Moje zapytanie
  1. INSERT INTO wiadomosci (tel_od, tel_do, tel_temat, tel_tresc, tel_read) SELECT 'nikk', login, 'tematt', 'tresc', '0' FROM User
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.