Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
if + pętla while = kiepski wynik - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: if + pętla while = kiepski wynik (/thread-if-petla-while-kiepski-wynik)

Strony: 1 2


RE: if + pętla while = kiepski wynik - msx83 - 29-08-2013

Cytat:
Kod:
BAZA MySQL
Kod:
id    day     month    year         who
1      29       8      2013        , admin
2      30       8      2013        , zuza, roman

Zasugerowałem się tym przykładem Bazy Danych gdzie masz dwa wpisy z różnymi numerami dnia.

Pobierając dwa wiersze, pętla wykonuje się dwa razy, w pierwszym przejściu ustawia np. "jesteś zapisany już na tym dniu" a w następnym np. "nie jesteś zapisany możesz jechać", czyli dwa wyniki, do dwóch wyjazdów z jednego dnia.
Wydaje mi się, że musisz jeszcze raz to przemyśleć, i np. pobrać z bazy wpisy w, których nie jest zapisany $who.
Na chwilę obecną nic innego nie przychodzi mi do głowy.

edit:
Wydaj mi się, że powtarza się problem z innego Twojego posta. Musisz jakoś identyfikować wyjazdy i np. wyświetlać informację: wyjazd nr 1 = jesteś zapisany już na tym dniu, wyjazd nr 2 = nie jesteś zapisany możesz jechać.


RE: if + pętla while = kiepski wynik - harvester2001 - 29-08-2013

Spróbuje coś pomyśleć nad tym z innej perspektywy.
W międzyczasie dziękuję bardzo, za chęć pomocy Smile


RE: if + pętla while = kiepski wynik - msx83 - 30-08-2013

Wpadłem na taki pomysł, sprawdź:
Kod PHP:
$result mysql_query("SELECT * FROM calendar WHERE event_d = $d AND event_m = $m AND event_y = $y");

$wpisany false;
$user '/'.$who.'/';

while(
$row=mysql_fetch_assoc($result)) {
    
$user_final $row['event_who']; //zobacz czy user już istnieje

    
echo $row['event_who'];//pokaż userów z eventów w tym dniu
    
echo "<br>";

    if (
preg_match($user$user_final)){
        
$wpisany true;
    }
}

echo 
"<br>";

if (
$wpisany) {
    echo 
"jesteś zapisany już na tym dniu.<br>";
}
else {
    echo 
"nie jesteś zapisany możesz jechać.<br>";




RE: if + pętla while = kiepski wynik - Engine - 30-08-2013

Osobiście bym podzielił to na dwie części. Na listę z wyjazdami na której jest dany user i można go wypisać z danego "wyjazdu":
Kod:
SELECT * FROM calendar WHERE event_d = $d AND event_m = $m AND event_y = $y AND event_who LIKE %$who%

oraz na listę na którą można go zapisać:
Kod:
SELECT * FROM calendar WHERE event_d = $d AND event_m = $m AND event_y = $y AND event_who NOT LIKE %$who%



RE: if + pętla while = kiepski wynik - harvester2001 - 30-08-2013

msx83 jesteś boski Smile
Normalnie działa Smile