Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Ajax, powrot do problemow
invx
post
Post #1





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


wziolem sie za AJAX, napisalem to ponizej ... i nie dziala ;(

  1. <?php
  2. <tr>
  3. <td class='kol1'>
  4. <hr/>
  5. <form method='POST' onsubmit="advAJAX.assign(document.getElementById('schutbox/zapisz_schutbox.php'), {onSuccess : function(obj) { alert(obj.responseText); },
  6. onError : function(obj) { alert('Error: ' + obj.status); }
  7. })"
  8. $login
  9. <textarea name='tresc' rows='5' cols='25' wrap='on'></textarea><br>
  10. <span class='Wyślij'><input type='submit' value='Wyślij'></span>
  11. </form>
  12. </td>
  13. </tr>
  14. </table>
  15. ";
  16. ?>


i plik zapisujacy
  1. <?php
  2.  
  3. if ( isset( $_SESSION[id] ) )
  4. {
  5. $autor = $_SESSION[id];
  6. }
  7. else
  8. {
  9. $autor = $_POST[autor];
  10. }
  11.  
  12. $sql = "INSERT INTO schutbox SET tresc='$_POST[tresc], autor='$autor'";
  13. $wykonaj = mysql_query( $sql );
  14.  
  15. ?>


P.S.
nie jestm pewien co do dzialu .... jesi zle dalem temat poprawcie
Go to the top of the page
+Quote Post
Pokemon
post
Post #2





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 29.07.2005

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


1022 posty. Imponujaca liczba.
... i dalej nie wiesz ze w prawidlowym poscie powinienes napisac czym objawia sie ten problem? Co jest zle, w ktorym momencie nie dziala...

Z rozpedu czy naprawde tak odwolujesz sie do zmiennych tablicowych, jak w pliku z zapisem do bazy?

Druga sprawa to (wybaczcie jezeli pisze zle ale z Ajaxm nie mialem zbyt duzo do czynienia) odwolanie sie do obiektu w JavaScripcie.

Wywolujesz getElementById i podajesz jako parametr cos bardzo dziwnego zamiast id jakiegos obiektu. No ale ja na to patrze jak na czysty JS wiec przepraszam za ewentualny blad.

Ten post edytował Pokemon 3.11.2005, 15:38:56
Go to the top of the page
+Quote Post
invx
post
Post #3





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


nie dziala nic (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
znaczy wpisuje dane daje wyslij, strona sie nie odswieza, ale pasek wysylania przegladarki sie przeladowuje i tyle ... dane nie sa dodawane do bazy.

P.S.
co do zmiennych tablicowych to wiem niedalem ' (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
FiDO
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


To moze przeczytaj jeszcze raz helpa do advAJAX, bo chyba tego nie zrobiles. Nie znalem tej klasy, ale w ciagu 2 minut po przeczytaniu urywkow helpa mozna sie dowiedziec co zrobiles na pewno zle. Polecam sprobowac :]
Go to the top of the page
+Quote Post
Sabistik
post
Post #5


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

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


ostatnio sie nudzilem i czytalem troche o tym advAJAX
Jak dobrze pamietam chciales napisac cos w rodaju schutboxa.

  1. <title>ajax</title>
  2. <script type="text/javascript" src="advajax.js"></script>
  3.  
  4. <script language="JavaScript">
  5. function pob() {
  6.  
  7. advAJAX.setDefaultParameters({
  8. onInitialization : function(obj) { document.getElementById(obj.tag).innerHTML = "Przygotowywanie..."; },
  9. onLoading : function(obj) { document.getElementById(obj.tag).innerHTML = "Ładowanie..."; },
  10. onSuccess : function(obj) { document.getElementById(obj.tag).innerHTML = obj.responseText; },
  11. onError : function(obj) { document.getElementById(obj.tag).innerHTML = "Błąd..."; }
  12. });
  13. advAJAX.get({ url: "pob.php", tag: "e3_div1" });
  14. advAJAX.setDefaultParameters({});
  15. }
  16.  
  17. function ins() {
  18.  
  19. advAJAX.assign(document.getElementById("e2_form"), {
  20. onSuccess : function(obj) {
  21. pob();
  22. }});
  23. }
  24.  
  25. </head>
  26. <body onload="ins()">
  27.  
  28. <div id="e3_div1" class="e3_div"><?php include("pob.php");?></div>
  29. <br />
  30. <br />
  31.  
  32. <form method="post" action="insert.php" id="e2_form">
  33. Nick:<br />
  34. <input type="text" name="nick" /><br />
  35. Txt:<br />
  36. <input type="text" name="txt" />
  37. <br /><input type="submit" value="OK" />
  38. </form>
  39.  
  40. </body>
  41. </html>


pob.php pobieranie rekordow z bazy.
  1. <?php
  2.  
  3. mysql_connect("localhost", "usr", "pass");
  4. mysql_select_db ("cms");
  5. $result = mysql_query("select * from comments");
  6. while ($line = mysql_fetch_row($result))
  7. {
  8. echo $line['1'].": ".$line['2']."<br />";
  9. }
  10.  
  11. ?>


insert.php dodawanie rekordu do bazy.
  1. <?php
  2.  
  3. mysql_connect("localhost", "usr", "pass");
  4. mysql_select_db ("cms");
  5. $result = mysql_query("insert into comments (nick, txt) values ('".$_POST[nick]."','".$_POST[txt]."' )");
  6.  
  7.  
  8. ?>


Nie wiem czy to jest super poprawnie napisane ale dziala.
Go to the top of the page
+Quote Post
AxZx
post
Post #6





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

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


hmmm a jak ci to dziala jak nie dziala tak jak powinno
przynajmniej u mnie:P

nie wiem po co tutaj ten JS jest skoro i tak nie jest uzyty do tego do czego chyba powinien byc.

dziala dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował AxZx 4.11.2005, 23:50:52
Go to the top of the page
+Quote Post
Sabistik
post
Post #7


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

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


To znaczy co nie dziala?
Dziala zodnie z przeznaczniem
Wpisuje do formularza nick, tekst i wciskam submit. bez odswiezenia wykonuje sie insert.php a do diva zostaje zaladowane pob.php.

Nie znam js. Wzorowalem sie na przykladach z http://advajax.anakin.us

~~edit
Ano musi dzialac (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował Sabistik 5.11.2005, 00:04:31
Go to the top of the page
+Quote Post
invx
post
Post #8





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


dzieki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

jednak wszystko tylko prawie dziala (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
po wyslaniu danych, pojawia sie tabela z dodanym rekordem ... ale nie pojawia sie juz formularz do wpisywania ... (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) , po odswiezeniu strony formularz sie pojawia, a po wyslaniu znowu znika ...

pokaz_schutbox.php
  1. <script type="text/javascript" src="advajax.js"></script>
  2.  
  3. <script language="JavaScript">
  4. function pob() {
  5.  
  6. advAJAX.setDefaultParameters({
  7. onInitialization : function(obj) { document.getElementById(obj.tag).innerHTML = "Przygotowywanie..."; },
  8. onLoading : function(obj) { document.getElementById(obj.tag).innerHTML = "Ładowanie..."; },
  9. onSuccess : function(obj) { document.getElementById(obj.tag).innerHTML = obj.responseText; },
  10. onError : function(obj) { document.getElementById(obj.tag).innerHTML = "Błąd..."; }
  11. });
  12. advAJAX.get({ url: "schutbox/aaa.php", tag: "e3_div1" });
  13. advAJAX.setDefaultParameters({});
  14. }
  15.  
  16. function ins() {
  17.  
  18. advAJAX.assign(document.getElementById("e2_form"), {
  19. onSuccess : function(obj) {
  20. pob();
  21. }});
  22. }
  23. </script>
  24. <div id="e3_div1" class="e3_div"><?php include("schutbox/aaa.php");?></div>
  25.  
  26. <?php
  27.  
  28. if ( !isset( $_SESSION[id] ) )
  29. {
  30. $login = "<span class='zw3'>Login:</span><input type='text' name='autor' size='20'>";
  31. }
  32. <tr>
  33. <td class='kol1'>
  34. <hr/>
  35. <form method='POST' id="e2_form" action="schutbox/zapisz_schutbox.php">
  36. $login
  37. <textarea name='tresc' rows='5' cols='25' wrap='on'></textarea><br>
  38. <span class='Wyślij'><input type='submit' value='Wyślij'></span>
  39. </form>
  40. </td>
  41. </tr>
  42. </table>
  43. ";
  44.  
  45.  
  46. ?>


zapisz_schutbox.php
  1. <?php
  2. mysql_connect("localhost", "root", "krasnal") or die ("nie mozna polaczyc z baza");
  3. mysql_select_db(rcx) or die ("nie mozna wybrac bazy");
  4.  
  5.  
  6. if ( isset( $_SESSION[id] ) )
  7. {
  8. $autor = $_SESSION[id];
  9. }
  10. else
  11. {
  12. $autor = $_POST[autor];
  13. }
  14.  
  15. $sql = "INSERT INTO schutbox SET tresc='$_POST[tresc]', autor='$autor'";
  16. $wykonaj = mysql_query( $sql );
  17. echo"$sql";
  18.  
  19. ?>


aaa.php
  1. <?php
  2.  
  3. mysql_connect("localhost", "root", "krasnal") or die ("nie mozna polaczyc z baza");
  4. mysql_select_db(rcx) or die ("nie mozna wybrac bazy");
  5.  
  6.  <table class='tabela_gl' width='30%' cellpadding='2' cellspacing='1'>
  7. <tr>
  8. <th>Schutbox</th>
  9. </tr>
  10. ";
  11. $sql = "SELECT * FROM schutbox";
  12. $wykonaj = mysql_query ( $sql );
  13.  
  14. while( $schutbox = mysql_fetch_array( $wykonaj ) )
  15. {
  16. $sql2 = "SELECT * FROM users WHERE id='$schutbox[autor]'";
  17. $wykonaj2 = mysql_query( $sql2 );
  18. $wynik = mysql_num_rows( $wykonaj2 );
  19.  
  20. if( $wynik == 0 )
  21. {
  22. $autor = "~".$schutbox[autor];
  23. }
  24. else
  25. {
  26. while( $users = mysql_fetch_array( $wykonaj2 ) )
  27. {
  28. $autor = $users[login];
  29. }
  30. }
  31. <tr>
  32. <td class='kol1'><span class='zw3b'>[$autor]</span><span class='zw3'>$schutbox[tresc]</span></td>
  33. </tr>
  34. ";
  35.  
  36. }
  37. ?>


index.php
  1. ...
  2. <body onload="ins()">
  3. ...
  4. <?php
  5. include( "schutbox/pokaz_schutbox.php" );
  6. ?>
  7. ...


Ten post edytował invx 5.11.2005, 22:52:36
Go to the top of the page
+Quote Post
AxZx
post
Post #9





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

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


to chyba dobrze no nie?
czyli dziala
bo z tego co widze to tak masz skrypt napisany zeby blokowal jesli juz doda wpis

zauwaz kiedy pojawia sie formularz;)
no chyba ze ja juz nic nie widze ale jest if(!isset($_SESSION........
Go to the top of the page
+Quote Post
invx
post
Post #10





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


if(isset($_SESSION...))

jest nie do calego formularza, a do tworzenia jednej zmiennej odpowiedzialnej za pole do wpisywania loginu :roll2:
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: 18.09.2025 - 04:29