SOYER 165 20 stycznia młodzi grają, nie mam dostępu do kompa... co zwraca mi getData.php i jak zrobić by była to $temperatura i facet od wpiszTemp widział tą wartość? Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia (edytowany) Nic Ci nie zwraca - pomijając błąd w require_once co prawda pobierasz z bazy wartość do $temperatura, ale nic z nią nie robisz. Pamiętaj - nazwy w JavaScripcie nie mają nic wspólnego z nazwami w PHP, to dwa różne światy. Spójrz na konstrukcję tego nieszczęsnego podnośnika do kwadratu... A funkcja w success po prostu jako argument dostaje to co zwrócił skrypt w url (ale to już mogłeś sobie sam doczytać - np w dokumentacji) Aha, właśnie... miałeś zdaje się zrobić coś innego? Pamiętaj - jedna z ważniejszych zasad w programowaniu: nigdy nie rób dwóch rzeczy na raz! Edytowano 20 stycznia przez ethanak 1 Cytuj Udostępnij ten post Link to post Share on other sites
SOYER 165 20 stycznia No właśnie skoro 4 minuty temu, ethanak napisał: A funkcja w success po prostu jako argument dostaje to co zwrócił skrypt w url a ten skrypt to getData.php który nic nie zwraca... o to właśnie pytam, jak zrobić by zwracał $temperatura. Czytałem coś o result ale nic nie rozumiałem... Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia To poczytaj o echo w php... i wywal w cholerę ten videopodręcznik z którego się uczysz, bo sądząc po wybitnych postępach w rozumieniu jak działa PHP jest tyle wart co zestaw wzorów do szydełkowania. 1 Cytuj Udostępnij ten post Link to post Share on other sites
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Szukasz producenta PCB?Sprawdź przetestowaną firmę JLCPCB. Dlaczego warto? • Prototypy PCB za 2$ (gotowe w 24 godziny) • Kody zniżkowe dla nowych klientów (po rejestracji) • Produkcja w profesjonalnej fabryce (zobacz film) Sprawdź też » Jak powstaje PCB? Wycieczka po fabryce
SOYER 165 20 stycznia (edytowany) echo no tak, ja myślałem, że to służy do wypisywania fizycznego czegoś tam... Czyli: <?php require_once "logMeteo.php"; $polaczenie = new mysqli($host, $db_user, $db_pass, $db_name); if($polaczenie->connect_errno!=0){ echo "Error:".$polaczenie>connect_errno."Opis: ".$polaczenie->connect_error; } else{ $sqlTemp='SELECT aktualna FROM meteo WHERE czujniki="temperatura"'; $temperatura=$polaczenie->query($sqlTemp); $polaczenie->close(); } echo $temperatura; ?> ? p. s. to nie wina kursu tylko moja, rodzina, praca, dom, a dopiero potem php... wieczorami po trochu... Edytowano 20 stycznia przez SOYER Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia (edytowany) Tak, tyle że echo daj w bloku "else" (jeśli połączenie z bazą się nie powiedzie to raczej nie będzie zmiennej $temperatura). Owszem, echo służy do wypisywania fizycznego czegoś tam. A potem ten czegośtam fizycznie wypisany wędruje sobie z serwera do Twojej przeglądarki (no bo nic innego nie powędruje) i ta albo go ślicznie wyświetla, albo używa jako argumentu dla funkcji success AJAX-a. Aha... zdaje się że miałeś zrobić coś innego? O MySQL-u pogadamy następnym razem bo to też temat rzeka, wrzuć tu na razie tą testową funkcję bo za chwilę cała tabela się zmieni i zmienią się kwerendy. Edytowano 20 stycznia przez ethanak 1 Cytuj Udostępnij ten post Link to post Share on other sites
SOYER 165 20 stycznia 8 minut temu, ethanak napisał: Tak, tyle że echo daj w bloku "else" (jeśli połączenie z bazą się nie powiedzie to raczej nie będzie zmiennej $temperatura). faktycznie. 8 minut temu, ethanak napisał: wrzuć tu na razie tą testową funkcję którą? 9 minut temu, ethanak napisał: bo za chwilę cała tabela się zmieni a to czemu? Już wcześniej pisałeś, że coś z nią nie tak... Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia Testowa funkcja która przyjmuje parametr i w teorii powinna zwrócić wartość odczytaną z bazy, ale na razie (ponieważ baza jest w proszku i nie będziemy się nią zajmować dopóki nie będzie działać to co miałeś zrobić) zwraca po prostu wartość losową. Gdzieś tam w którymś poście podawałem... A tabela się zmieni bo jest absolutnie nieużyteczna i jeśli chcesz aby Ci to działało to trzeba od razu zrobić porządnie. HTML-a, PHP i JS można poprawić; błędnie stworzonej tabeli SQL-a już się raczej nie da Cytuj Udostępnij ten post Link to post Share on other sites
Belferek 71 20 stycznia 4 minuty temu, ethanak napisał: błędnie stworzonej tabeli SQL-a już się raczej nie da Dawno, dawno temu gdy bawiłem się PHP i MySQL-em to tabele tworzyłem i modyfikowałem z poziomu PHP - pewnie i teraz da się to robić. Cytuj Udostępnij ten post Link to post Share on other sites
SOYER 165 20 stycznia 3 minuty temu, Belferek napisał: Dawno, dawno temu gdy bawiłem się PHP i MySQL-em to tabele tworzyłem i modyfikowałem z poziomu PHP - pewnie i teraz da się to robić. Ja też zrobiłem w phpMyAdmin... Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia Nie o to chodzi. Jeśli założenia przy tworzeniu tabeli były błędne (np. brakowało jakiejś kolumny lub miała nieprawidłowy typ) to oczywiście mogę tabelę poprawić i nie trzeba mi do tego php ani admina (od tego jest w systemie polecenie mysql - nawiasem mówiąc warto znać), ale dane zbierane przez rok są głęboko w /dev/null. Tu akurat jest ten przypadek. 1 Cytuj Udostępnij ten post Link to post Share on other sites
SOYER 165 20 stycznia (edytowany) <?php function getCurrentStatus($what) { // tu w przyszłości będzie pobieranie danych z bazy, a na dzisiaj... return rand(10,40); // tak na przykład } echo $what; ?> i <script> function wpiszTemp(){ document.getElementById("wyniki").innerHTML = $what+" *C ";}; } </script> <script> function pobierzTemp(){ $.ajax({url:"getData.php", success:wpiszTemp }); } </script> Edytowano 20 stycznia przez SOYER Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia No niezupełnie... <?php function getCurrentStatus($what) { // tu w przyszłości będzie pobieranie danych z bazy, a na dzisiaj... return rand(10,40); // tak na przykład } $what = $_REQUEST['what']; $result = getCurrentStatus($what); echo $result; ?> Coś takiego - mam nadzieję że rozumiesz o co chodzi... Cytuj Udostępnij ten post Link to post Share on other sites
SOYER 165 20 stycznia No niezupełnie $what = $_REQUEST['what']; ustawia zmienną $what jako globalną, tak? Ale po co? Czemu to służy? Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 1005 20 stycznia Ech... Równie dobrze mogłem napisać: echo getCurrentStatus($_REQUEST['what']); tylko to raczej takie mało czytelne... Po to są zmienne aby ich używać. 1 Cytuj Udostępnij ten post Link to post Share on other sites
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay