[php][Ajax] Przesłanie do bazy danych rekordu bez przeładowania


(Doomib) #1

Witam wygląda to tak, że gdy ktoś kliknie w telefon to chciałbym pobrać aktualną wartość w bazie danych dopisać 1 i zapisać. Wszystko bez przeładowania strony. Ważne jest też to, że strony są dynamiczne więc ważne aby najpierw pobrano id ogłoszenia i na jego podstawie w odpowiednim wierszu dopisało wartość po kliknięciu w telefon.

Za bardzo nie wiem jak się do tego zabrać pomoże ktoś?


(Drobok) #2

Na tym forum nie odwalamy roboty za kogoś, zleć to komuś jeśli nie masz zamiaru nauczyć się jak to zrobić.


(Doomib) #3

o to mi właśnie chodzi tylko zależy mi aby ktoś podpowiedział mi od czego zacząć.

Mam już fukcje która bez przeładowania pobiera numer telefonu i wyświetla go bez przeładowania jednak jak zapisać do bazy danych nie wiem. uczę się dopiero.


(Kamatori) #4

Najprościej będzie jak wystawisz sobie restowe API właśnie z tą funkcją. Następnie za pomocą jQuery będziesz robił POSTy na tą funkcję po stronie klienta. Najłatwiej będzie ci to zrobić za pomocą micro-frameworka jakim jest http://www.slimframework.com/ . Nie narzuca zależności ani ścisłej logiki. Jeśli nie wiesz jak zapisywać do bazy to po prostu użyj jakiegoś ORM’a bądź zainteresuj się PDO. 


(Doomib) #5

stronę napisaną mam w kohana framework więc użyje orm’a z kohany bardziej interesuje mnie kod od strony jquery i ajax.


(Kamatori) #6

Skoro używasz kohany to zastosuj https://github.com/SupersonicAds/kohana-restful-api 


(Doomib) #7

Dużo osób zachwalało kohane i dlatego zacząłem z nią przygodę z frameworkami. Teraz wychodzi na to, że tracę czas?

link na githuba matwy -404


(Jim1961) #8

Replay: https://github.com/SupersonicAds/kohana-restful-api

 

Jak już szukasz który framework czy narzędzie będzie najlepsze, warto przefiltrować do tych z ostatniego roku, bo np. w takim PHP wszystko się teraz zmienia z dnia na dzień. Kohana umarła, niech żyje Laravel, Symphony, Yii itp.


(Kamatori) #9

 

Tak. Kohana od ponad roku jest martwa. Twórcy próbowali jeszcze coś przy niej dłubać, niestety laravel ją dobił do końca. 

 

W php trzeba być przygotowanym, że coś co jest standardem może paść w bardzo krótkim czasie, szczególnie jak nie trzyma się norm i narzuca własną logikę jak w przypadku Kohany czy pierwszej wersji Yii (druga wersja  jest w devie i na szczęście naprawia te błędy. Jak tylko wyjdzie stabilna wersja, będzie można liczyć na małą rewolucję. 


(Doomib) #10

Zacząłem przyglądać się Yii2 macie może jakąś dokumentacje, tutoriale po polsku itp dla zilonego?


(Kamatori) #11

Jeśli chodzi poradniki to nic po polsku nie znajdziesz, nawet z książek. Zostaje tylko oficjalna dokumentacja i szybki ‘get started’. Czaasami powstaną jakieś tutoriale po ang, ale one zazwyczaj nie omawiają całkowitych podstaw. No ale do tego trzeba przywyknąć. 

 

 

Przykład tutorialu: http://code.tutsplus.com/tutorials/programming-with-yii2-getting-started–cms-22440


(dr.boczek) #12

jak miałeś do czynienia z kohana to spróbuj moze tego, bardzo fajny framework

 

http://phalconphp.com/pl/

 

jeśli chodzi o Yii to nie wiem co ty chcesz po polsku tworzyć… http://www.yiiframework.com/tour/


(Doomib) #13

Ciekawe czy to prawda jeżeli chodzi o szybkość phalcon - jeżeli tak to nie ma sensu uczyć się yii


(Kamatori) #14

Tak, jest to prawda. Większość funkcji z phalcona została przepisana w czystym C, dlatego to tak szybko chodzi. Ja jednak z phalcona zrezygnowałem ze względu na słabą dokumentację i małe community. Może teraz jest z tym lepiej, ale jeszcze rok temu było bardzo słabo (no i trzeba liczyć się z tym że framework jest w trakcie heavy-development, więc nie ustrzeżesz się od błędów). 

 

I taki PS: Na etapie wczesnego poznawania frameworków nie ma sensu patrzeć na ilość req/s. Zresztą, php pod tym względem jest słabe (po to jest java, golang, erlang etc). Restowego api wystawiał nie będziesz i zapewne klastrów stawiał także na razie nie będziesz, więc nie ma sensu tak szczegółowo na to patrzeć. 


(Doomib) #15

Ale jak już się uczyć FW to przyszłościowego więc Phalcom wygląda przyszłościowo ze względu na wydajność.


(Doomib) #16
<?php
public function action_curtain()
	{
		$model = new Model_Announcement();
		$model->add_active_conditions();
		$model->find_by_pk($this->request->param('id'));
		 	
 
		if(!$model->loaded())
		{
			throw new HTTP_Exception_404;
		}
	
		switch($this->request->query('show'))
		{
			case 'email':
				$this->response->body(HTML::mailto($model->annoucement_email, URL::idna_decode($model->annoucement_email)));
				break;
			
			case 'telephone':
		

				$this->response->body($model->annoucement_telephone);
				


				break;
			
			default:
				throw new HTTP_Exception_400;
		}
	} 
?>

Ta funkcja jest wykonywana przez ajax gdy ktoś kliknie w telephone. Jest szansa aby dodać do niej pobieranie z bazy rekordu dodawanie 1 i zapisywanie? Jest to do wykonania w kohana czy muszę nową funkcję pisać?