Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> odświeżenie strony po dodaniu rekordu 2
mozart2008
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 6.05.2010

Ostrzeżenie: (0%)
-----


Witam,
Chciałem zrobić aby wyświetlało mi napis kiedy ktos doda rekord.
Zrobiłem tak i nie działa:


  1. $wyswietlaa = "select wiadomosc from chat_snowboard order by id desc limit 1";
  2. $nowi_was_zapytanieaa = mysql_query($wyswietlaa);
  3. ?>
  4. <script type="text/javascript">
  5. for (<?php $osobaas = mysql_fetch_row($nowi_was_zapytanieaa) ; ?>; ; <?php $zapis = mysql_fetch_row($nowi_was_zapytanieaa) ; ?>)
  6. {
  7. if (<?php $osobaas!=$zapis ;?>)
  8. break;
  9. document.write("przekierowanie");
  10. }
  11. </script>



Prosze mi powiedziec gdzie bład.Z góy dzięki.;(
Go to the top of the page
+Quote Post
marcint83
post
Post #2





Grupa: Zarejestrowani
Postów: 23
Pomógł: 4
Dołączył: 24.08.2010

Ostrzeżenie: (0%)
-----


Zobacz co Ci zwracają zmienne $osoba i $zapis bo jeśli są różne (a mam wrażenie że tak jest ) to nigdy się nie wykona instrukcja document.write . Zresztą widzę ze masz w zapytaniu limit 1, pobierasz jeden wiersz a chcesz dostać dwa (IMG:style_emoticons/default/winksmiley.jpg) (dwa razy wywolujesz mysql_fetch_row
Go to the top of the page
+Quote Post
mozart2008
post
Post #3





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 6.05.2010

Ostrzeżenie: (0%)
-----


Zrobiłem tak i nic nie działa...

  1. $wyswietlaab = mysql_query("SELECT DISTINCT `id` FROM `chat_snowboard`");
  2. $wyswietlaa = mysql_query("SELECT DISTINCT `id` FROM `chat_snowboard`");
  3. $osobaas = mysql_num_rows($wyswietlaa);
  4.  
  5.  
  6. for( $zapis = mysql_num_rows($wyswietlaab) ; $osobaas!=$zapis; $i=1 )
  7. if ($i==1) {
  8. echo "tekst" ;
  9. }
  10.  


Ten post edytował mozart2008 29.08.2010, 09:36:00
Go to the top of the page
+Quote Post
frytek92
post
Post #4





Grupa: Zarejestrowani
Postów: 163
Pomógł: 10
Dołączył: 9.11.2007
Skąd: Goleniów

Ostrzeżenie: (0%)
-----


Pętla for działa troche inaczej (IMG:style_emoticons/default/smile.gif) , jeżeli chcesz sprawdzić ile rekordów zostało dodanych to : mysql_affected_rows, ale mysle ze chodzi o dodawanie posta to zrób coś w tym stylu

Kod
if(isset($_POST['submit')){

// Sprawdzanie danych

// Dane sprawdzone wartość została dodana

}


Kolejna sprawa to popracuj nad nazwami straszny chaos wprowadzaja, ja osobiscie stosuje jezeli chce coś podliczyc to daje $i_ jezeli tablica to $o_ np :

Kod
<?php

$list = mysql_query("ZAPYTANIE");

$o_list = mysql_array($list);

$i_list = mysql_num_rows($list);


Polecam również jakas fajna ksiazke o PHP bo z internetu nauczysz sie tylko złych praktyk na poczatku.

Pozdrawiam

Ten post edytował frytek92 29.08.2010, 13:38:00
Go to the top of the page
+Quote Post
mozart2008
post
Post #5





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 6.05.2010

Ostrzeżenie: (0%)
-----


Nadal nie rozumiem jak np. wyswietlic napis kiedy ktos doda rekord do bazy...
Nobo jak wyswietlam rekordy na jakiejsc stronie... noto kiedy np. ktoś z innej przeglądarki rekord noto niewyświetla mi go ... żeby wyswietlało musze odświeżyć strone...


a niew iem jak zrobic sprawdzanie czy ktos w tej chwili dodał rekord który nei jest wyswietlony...


wiem że coś trzeba z pętlą nieskończoną...

Z góry dzięki.(IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
wiiir
post
Post #6





Grupa: Zarejestrowani
Postów: 260
Pomógł: 34
Dołączył: 22.02.2010

Ostrzeżenie: (0%)
-----


mozna to zrobic tak:
  1. if(isset($_POST['submit'])){ //sprawdzenie czy zostal wyslany formularz
  2. $sql = 'INSERT INTO ....
  3. VALUES (...)';
  4. $result = @mysql_query($sql);
  5. $last_record = mysql_insert_id();
  6. // teraz robisz zaptanie
  7.  
  8. $wyswietlaab = @mysql_query("SELECT DISTINCT `id` FROM `chat_snowboard` where id=$last_record");
  9. $row = mysql_fetch_assoc($wyswietlaab)
  10.  
  11. echo "Ostatnio dodany rekord do bazy to id = ".$row[id];
  12. }

Mysle ze o to ci chodzi...
Jak bedzie dzialac to zmodyfikuj o sprawdzanie czy zapytania sa dobrze wykonane itd

Ten post edytował wiiir 30.08.2010, 07:08:30
Go to the top of the page
+Quote Post
marcint83
post
Post #7





Grupa: Zarejestrowani
Postów: 23
Pomógł: 4
Dołączył: 24.08.2010

Ostrzeżenie: (0%)
-----


Musiałbyś to zrobić za pomocą AJAX'a - i co jakiś czas wywoływać funkcję korzystając z window.setTimeout(), pobrać sobie ostatnio dodane Id rekordu i sprawdzać np co 10 s czy pojawił się nowy rekord.

Opis do setTimeout masz tu: klikni

Ten post edytował marcint83 30.08.2010, 10:34:36
Go to the top of the page
+Quote Post
wiiir
post
Post #8





Grupa: Zarejestrowani
Postów: 260
Pomógł: 34
Dołączył: 22.02.2010

Ostrzeżenie: (0%)
-----


Cytat(marcint83 @ 30.08.2010, 11:33:51 ) *
Musiałbyś to zrobić za pomocą AJAX'a - i co jakiś czas wywoływać funkcję korzystając z window.setTimeout(), pobrać sobie ostatnio dodane Id rekordu i sprawdzać np co 10 s czy pojawił się nowy rekord.

Opis do setTimeout masz tu: klikni



chryste panie.. przeciez nie chodzi o to zeby sprawdzac czy jest nowy rekord co 10 sek bo przeciez po co maja mi sie wyswietlac informacje ze ktos tam inny wstawil rekord.. bo tak to by dzialalo, ze przgladam sobie strone az tu nagle pojawia mi sie komunikat "Dodano nowy rekord"... heheheh beka co nie miara
Jesli ajax to zrob sobie funckje powrotu po instercie ktora wstawi html-a w jakiegos diva, czyli document.getElementById("odpowiedz").innerHTML = "Dodano nowy rekord";
Go to the top of the page
+Quote Post
marcint83
post
Post #9





Grupa: Zarejestrowani
Postów: 23
Pomógł: 4
Dołączył: 24.08.2010

Ostrzeżenie: (0%)
-----


Cytat(wiiir @ 30.08.2010, 12:29:21 ) *
chryste panie.. przeciez nie chodzi o to zeby sprawdzac czy jest nowy rekord co 10 sek bo przeciez po co maja mi sie wyswietlac informacje ze ktos tam inny wstawil rekord.. bo tak to by dzialalo, ze przgladam sobie strone az tu nagle pojawia mi sie komunikat "Dodano nowy rekord"... heheheh beka co nie miara
Jesli ajax to zrob sobie funckje powrotu po instercie ktora wstawi html-a w jakiegos diva, czyli document.getElementById("odpowiedz").innerHTML = "Dodano nowy rekord";


wiiir no ja wiem że sprawdzanie co 10 s czy jest nowy rekord jest bez sensu ale z jego posta wywnioskowałem że o coś takiego może mu chodzić (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
wiiir
post
Post #10





Grupa: Zarejestrowani
Postów: 260
Pomógł: 34
Dołączył: 22.02.2010

Ostrzeżenie: (0%)
-----


Cytat(marcint83 @ 30.08.2010, 14:28:56 ) *
wiiir no ja wiem że sprawdzanie co 10 s czy jest nowy rekord jest bez sensu ale z jego posta wywnioskowałem że o coś takiego może mu chodzić (IMG:style_emoticons/default/winksmiley.jpg)



No w sumie tez tak mozna bylo zalozyc (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 19:00