Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapytanie MySQL w advAJAX
3miel
post 22.04.2006, 17:41:12
Post #1





Grupa: Zarejestrowani
Postów: 203
Pomógł: 0
Dołączył: 10.06.2004
Skąd: Gliwice

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


Witam,

czy można w treści funkcji advAJAX umieścic zapytanie do MySQL'a bez uzywanie "url:"?

chodzi mi o cos takiego:
Kod
<script language="javascript">
function widok(widok){

  advAJAX.get({
    onSuccess : function(obj) {
         if(widok=='prosty'){
                  //ZAPYTANIE
                  //dodanie do zapytanie kilku linijek tekstu
                  document.getElementById('ajax').innerHTML = wynikZapytania;

         }else if (widok=='zaawansowany'){
                  document.getElementById('ajax').innerHTML = 'zaawansowany';
         }  
    },
    onError : function(obj) { alert("Error: " + obj.status); }
  });

}
</script>


czy konieczne jest umieszczenie tego w osobnym pliku??


--------------------
Go to the top of the page
+Quote Post
mike
post 22.04.2006, 17:46:19
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


No ludzie, AJAX fany jest ale bez przesady!
Przeciez to jest JavaScript!

W JavaScripcie zapytania do bazy chcesz pisać ?!

Oczywiście, ze się nie da.
Go to the top of the page
+Quote Post
3miel
post 22.04.2006, 18:05:59
Post #3





Grupa: Zarejestrowani
Postów: 203
Pomógł: 0
Dołączył: 10.06.2004
Skąd: Gliwice

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


tak, wiem.

Ale gdyby zapytanie dać do <? ?> to w tedy JS nic by nie wiedział ze jest to zapytanie bo to sie dzieje po str serwera! tylko jak wynik przypisac do zmiennej? albo wyswietlić?

----------
ja juz sam nie wiem, obojetnie w jaki sposbó dodać zapytanie z MySQL i wyświetlic je w TEXTAREA!

Prosze o pierwszy lepszy przykłąd, bo na prawde nic nie potrzafi ewymyśleć!

---------
no już załątwiłem ten problem

Ten post edytował 3miel 23.04.2006, 08:40:25


--------------------
Go to the top of the page
+Quote Post
060156
post 26.04.2006, 00:06:14
Post #4





Grupa: Zarejestrowani
Postów: 146
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Columbus Georgia

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


Oczywiscie ze sie da
aczkolwiek wymaga to troche pracy.

Podejscie jest takie:

1) zaprojektowanie protokolu komend, ktore zawieraja
- metody jakie sie wywoluje z Mysql (select, update, insert, delete, etc..)
2) przekazywanie parametrow do tych komend
- nazwa tablicy, kolumny, where, etc ..
3) uzycie Ajax do wyslania komendy do php strony i
procesowanie rezultatu ..

4) Zaprojektowanaie php strony ktora wykonuje te komendy
dostepujac MySql, zwraca rezultaty i ewentualne bledy.

  1. // Przegladarka - przykladowe uzycie
  2.  
  3. var db = new MyDb("database","MyDb.php","mysql");
  4.      db.queryRows("tablica","col1, col2, col3","where");
  5.      db.submit(odpowiedz);
  6.  
  7.      function odpowiedz(rows, error) {  // odpowiedz na wywolanie
  8.       error - jesli nastapil blad
  9.       rows - zwrocone kolumny
  10.      }


  1. <?php
  2.  
  3.  
  4. // MyDb.php 
  5.  implementuje komendy klasy MyDb, odczytanie parametrow,
  6.  dostep do database i zwrocenie rezultatu
  7.  
  8.  
  9. ?>


Z punktu widzenia przegladarki jest to abstrakcyjny Database Interface
i mozna zaimplementowac go uzywajac roznych database ..
Zaimplementowalem klase MyDb w Iwa i bardzo
skraca to kod, bo odwolanie od database opisujemy tylko
po stronie przegladarki i jest on latwy do modyfikacji ...
Go to the top of the page
+Quote Post
seaquest
post 26.04.2006, 06:12:00
Post #5





Grupa: Przyjaciele php.pl
Postów: 790
Pomógł: 7
Dołączył: 6.02.2003
Skąd: Polska

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


Tylko, że to jest sprzeczne z założeniami MVC i w związku z tym bardzo niebezpieczne.

Akurat Model i Widok powinny być od siebie jak najdalej.


--------------------
Michał Płachta
Warsztat: Mac OS X Leopard, PostgreSQL, Text Mate, Retrospectiva + SVN
Go to the top of the page
+Quote Post
mariuszn3
post 26.04.2006, 14:59:29
Post #6





Grupa: Zarejestrowani
Postów: 352
Pomógł: 0
Dołączył: 22.01.2006

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


3miel.. co to jest Ajax? Na jakiej zasadzie działa? Jak znajdziesz na te pytania odpowiedzi.. zrozumiesz, że Twoje podejscie jest trochę irracjonalne.
Możliwe, że z technicznego punktu widzenia jest możliwe nawiązanie komunikacji javascript -> serwer MySQL.. ale nawet jesli, to byłaby to bardzo kontrowersyjna praktyka.. jak i zapewne z braku odpowiednich dedykowanych bibliotek w js po prostu nie opłacalna.

Ten post edytował mariuszn3 26.04.2006, 14:59:59
Go to the top of the page
+Quote Post
3miel
post 26.04.2006, 15:22:24
Post #7





Grupa: Zarejestrowani
Postów: 203
Pomógł: 0
Dołączył: 10.06.2004
Skąd: Gliwice

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


Jak pisałem teog pierwszego posta to szczerze móiąc chyba od tygodnia poznałem AJAX i dlatego jak zwykle che wiedzieć wszsytko (może prawie wszystko;)

A ten problem wydawał mi się do rozwiązania, ale jak teraz juz wiem - myliłem się.

Dziękuję za uświadomienie problemu z komunikacją MySQL -> "strona www" w AJAXie.


--------------------
Go to the top of the page
+Quote Post
060156
post 30.04.2006, 06:34:36
Post #8





Grupa: Zarejestrowani
Postów: 146
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Columbus Georgia

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


mariuszn3
Jakies glupoty wipisujesz o praktykach ..
Jest jak najbardziej wlasciwia ..
I porzynosi doskonale rezulataty ..
Poczytaj przyjacielu moze wiecej o progarmowaniu
zanim zaczniesz wyrazac takie opinie .
Widze, ze na tym forum to co jest inowacyjne
jest kwalifikowane jako niewlasciwa praktyka ..
Go to the top of the page
+Quote Post
mariuszn3
post 30.04.2006, 12:17:41
Post #9





Grupa: Zarejestrowani
Postów: 352
Pomógł: 0
Dołączył: 22.01.2006

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


Cytat(060156 @ 2006-04-30 05:34:36)
mariuszn3
Jakies glupoty wipisujesz o praktykach ..
Jest jak najbardziej wlasciwia ..
I porzynosi doskonale rezulataty ..
Poczytaj przyjacielu moze wiecej o progarmowaniu
zanim zaczniesz wyrazac takie opinie .
Widze, ze na tym forum to co jest inowacyjne
jest kwalifikowane jako niewlasciwa praktyka ..

Pamiętaj, że mówimy tu o implementacji javascript w przeglądarkach internetowych.
Jak i miałem na mysli bezposrednie połączenie z serwerem MySQL! (a nie otwieranie ukrytej ramki, wywoływanie skryptu php czy asp i przesłanie mu zapytanie, które to dopiero na serwerze zostanie przekazane MySQL)
Jesli da się to zrobić, to bardzo proszę o przykład, będę wdzięczny.
Choć to czysta ciekawosć, bo raczej nie planowałbym (i nawet nie radziłbym) korzystania z tej funkcjonalnosci.
Go to the top of the page
+Quote Post
060156
post 30.04.2006, 18:34:37
Post #10





Grupa: Zarejestrowani
Postów: 146
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Columbus Georgia

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


Jak najbardziej .

Zalaczam krotki opis klasy MyDb, ktora zaimplementowalem uzywajac
nie bardzo lubiana na tym forum IWA.

Pozwala on realizowac dostep do database z przegladarki
przez strone php ktora implementje database commands..

DATABASE QUERY/RESPONSE (Browser Side)

MyDb.query(database, commands, response_function, service_page_url, service_name)
response_function([inserted_id, affected_rows, rows, cols, objects], error)

DATABASE COMMANDS

query columns, rows, objects
insert row, object
insert parent-child row, object
replace row, object
update rows, objects
delete objects
create table
stored procedure

query databases
query tables
query table schema
query table schema like objects
Go to the top of the page
+Quote Post
mariuszn3
post 30.04.2006, 18:47:15
Post #11





Grupa: Zarejestrowani
Postów: 352
Pomógł: 0
Dołączył: 22.01.2006

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


Nie zrozumiałeś o co mi chodzi.. Przeczytaj uważnie co napisałem.
Przykład, który przytoczyłeś nie łączy się bezpośrednio z serwerem MySQL.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 27.04.2024 - 17:21