Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]php dodawanie wartosci do bazy danych, Connection failed: Connection refused
Bullseye
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

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


Hej, zaczynam zabawę z programowaniem w C, i jako że chciałem dane z uC wysyłać do mojej bazy danych by potem na stronie www ładnie je przedstawić (IMG:style_emoticons/default/smile.gif)
Problemem jest skrypt który znalazłem (a sam nie umiem napisać (IMG:style_emoticons/default/sad.gif) ), mianowicie za każdym razem dostaje komunikat: "Connection failed: Connection refused"

skrypt poniżej:

  1. <?php
  2. $servername = "ADRES"; //Adres serwera MySQL
  3. $username = "NAZWA"; //Nazwa konta użytkownika MySQL
  4. $password = "HASLO"; //Hasło do konta użytkownika MySQL
  5. $dbname = "NAZWA"; //Nazwa bazy danych
  6.  
  7. $conn = new mysqli($servername, $username, $password, $dbname); //Utworzenie połączenia z MySQL
  8.  
  9. if ($conn->connect_error) { //Sprawdzenie połączenia z MySQL
  10. die("Connection failed: " . $conn->connect_error); //Wyświetlenie informacji o problemie z połączeniem
  11. }
  12.  
  13. $a = $_GET["a"]; //Odebranie danych wysłanych przez ESP
  14. $b = $_GET["b"]; //Odebranie danych wysłanych przez ESP
  15. $c = $_GET["c"];
  16. $d = $_GET["d"];
  17. $e = $_GET["e"];
  18.  
  19. $sql = "INSERT INTO DOM (wilgotnosc, tempOUT, odczuwalna, cisnienie, tempIN)
  20. VALUES ('$a', '$b', '$c', '$d', '$e')";
  21. //W pierwszej lini następuje zdefiniowanie nazwy tabeli oraz kolumn do których mają zostać dodane dane
  22. //a w drugiej definiowanie danych które zostaną dodane to tabeli
  23.  
  24. // Można to polecenie także zapisać w formie jednej lini ale polecam pozostać przy zapisie w dwóch liniach ponieważ jest bardziej przejrzysty
  25. // $sql = "INSERT INTO test (Dane1, Dane2) VALUES ('$a', '$b')";
  26.  
  27. if ($conn->query($sql) === TRUE) { //Sprawdzenie czy dane zostały poprawnie dodane do tabeli
  28. echo "Rekord zostal dodany poprawnie!"; //Wyświetlenie komunikatu o powodzeniu
  29. } else {
  30. echo "Error: " . $sql . "<br>" . $conn->error; //Wyświetlenie komunikatu o niepowodzeniu wraz z informacjami na temat błędu
  31. }
  32.  
  33. $conn->close(); //Zamknięcie połączenia z MySQL
  34. ?>


Dane oczywiscie do bazy danych podałem swoje (IMG:style_emoticons/default/smile.gif)

W czym problem że nie chce dodać rekordu do bazy ?

Gamoń ze mnie, ustawiałem usilnie by połączenie było z zewnątrz a właczony był firewall blokujacy dostęp z zewnatrz do bazy danych (IMG:style_emoticons/default/smile.gif)
Wystarczyło zmienić adres na: 127.0.0.1
Albo odblokować port w firewallu (IMG:style_emoticons/default/smile.gif)

Ten post edytował Bullseye 20.07.2018, 22:59:45
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Bullseye
post
Post #2





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

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


Taki serwerek prywatny raczej nikt nie zaatakuje, a nawet jeśli to stracę parę pomiarów bardziej dla zabawy niż potrzebnych, ale dzięki za radę ! (IMG:style_emoticons/default/smile.gif)

Więc przy dwóch wartościach zbieranych z bazy wszystko działa jak należy, ale jak dodaje trzecią wartość to niestety brak reakcji, poniżej działający skrypt:

  1. <html>
  2. <head>
  3. <title>Tutorial</title>
  4. </head>
  5. <body>
  6. <?php
  7. $servername = "";
  8. $username = "";
  9. $password = "";
  10. $dbname = "";
  11. $conn = new mysqli($servername, $username, $password, $dbname);
  12. if ($conn->connect_error) {die("Connection failed: " . $conn->connect_error);}
  13. $sql = "SELECT ID, wilgotnosc, tempOUT, odczuwalna FROM DOM ORDER BY id ASC LIMIT 100";
  14. $result = $conn->query($sql);
  15. if ($result->num_rows >= 0) {
  16. echo '<table cellspacing="0" border="1" rules="rows" bordercolor="black">';
  17. echo '<tr>
  18. <td width="100px" bgcolor="silver" align="center">ID:</td>
  19. <td width="100px" bgcolor="gray" align="center">Dane1:</td>
  20. <td width="100px" bgcolor="silver" align="center">Dane2:</td>
  21.  
  22. </tr>';
  23. while($row = $result->fetch_assoc()) {
  24. echo '<tr>
  25. <td bgcolor="silver" align="center">' . $row["ID"]. '</td>
  26. <td bgcolor="gray" align="center">' . $row["wilgotnosc"].'</td>
  27. <td bgcolor="silver" align="center">' . $row["tempOUT"]. "</td>
  28.  
  29. </tr>";
  30. }
  31. echo "</table>";
  32. } else {
  33. echo "0 results";
  34. }
  35. $conn->close();
  36. ?>
  37. </body>
  38. </html>


Kod błędu:
Kod
2018-07-21 09:37:26: (log.c.164) server started
2018-07-21 09:38:28: (mod_fastcgi.c.2695) FastCGI-stderr: PHP message: PHP Notice:  Undefined index: a in /var/www/html/add.php on line 13
2018-07-21 09:38:28: (mod_fastcgi.c.2695) FastCGI-stderr: PHP message: PHP Notice:  Undefined index: b in /var/www/html/add.php on line 14
2018-07-21 09:38:28: (mod_fastcgi.c.2695) FastCGI-stderr: PHP message: PHP Notice:  Undefined index: c in /var/www/html/add.php on line 15
2018-07-21 09:38:28: (mod_fastcgi.c.2695) FastCGI-stderr: PHP message: PHP Notice:  Undefined index: d in /var/www/html/add.php on line 16
2018-07-21 09:38:28: (mod_fastcgi.c.2695) FastCGI-stderr: PHP message: PHP Notice:  Undefined index: e in /var/www/html/add.php on line 17
2018-07-21 09:40:00: (mod_fastcgi.c.2695) FastCGI-stderr: PHP message: PHP Parse error:  syntax error, unexpected 'silver' (T_STRING), expecting ',' or ';' in /var/www/html/test.php on line 30


Ten post edytował Bullseye 21.07.2018, 08:40:58
Go to the top of the page
+Quote Post

Posty w temacie


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: 16.10.2025 - 18:31