dan55 Napisano Maj 7, 2020 Udostępnij Napisano Maj 7, 2020 (edytowany) Witam. Zainstalowałem środowisko LAMP na Rasberry Pi zero W z tego opisu : https://forbot.pl/blog/kurs-raspberry-pi-projekty-prosty-serwer-www-id27882 Wszystko przebiegło bez problemów, loguję się z przeglądarki do bazy danych wpisując adres malinki w sieci lokalnej: 192.168.0.63/phpmyadmin . Natomiast problem jest z połączeniem z bazą przy próbie wpisania danych przez skrypt php z przeglądarki. Jaką nazwę hosta trzeba wpisać aby poprawnie połączyć się z bazą? Próbowałem już wszystkiego: localhost, localhost:3306, lokalny adres ip malinki i nic. Do połączenia stosuję poniższy kod znaleziony w sieci, oczywiście jako użytkownika, hasło i nazwę bazy wpisuję moje dane dostępowe : <?php $connection = @mysql_connect('localhost', 'uzytkownik', 'haslo') or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error()); echo "Udało się połączyć z serwerem!<br />"; $db = @mysql_select_db('nazwa_bazy', $connection) or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error()); echo "Udało się połączyć z bazą danych!"; $ins = @mysql_query("INSERT INTO baza SET dana1='$dana1', dana2='$dana2'"); mysql_close($connection); ?> Jakie parametry trzeba podać aby połączyć się z bazą danych w malince w sieci lokalnej? Pozdrawiam. Edytowano Maj 8, 2020 przez Gieneq Zachęcam do używania bloku kodu Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Maj 8, 2020 Udostępnij Maj 8, 2020 No i co ten skrypt odpowiada? Brak połączenia z serwerem MySQL czy brak połączenia z bazą? To dość ważne... Przy okazji: moduł mysql jest przestarzały i zachowany chyba tylko jako relikt z epoki PHP3.x (przypominam, że mamy 7.x), używaj mysqli. Cytuj Link do komentarza Share on other sites More sharing options...
dan55 Maj 8, 2020 Autor tematu Udostępnij Maj 8, 2020 Problem w tym, że nie mam żadnej odpowiedzi. dodałem komendę echo "łączę"; przed $connection i to mi jeszcze wyświetla, później nic. Nie wiem czy połączyło z bazą danych czy nie. W bazie nie pojawiają się nowe dane w tabelkach. Co powinienem wpisać w polu 'localhost' jeśli malinka jest w sieci lokalnej pod ip. 192.168.0.63 ? Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Maj 8, 2020 Udostępnij Maj 8, 2020 Powinno się zgłosić pod localhost. Możesz spróbować skorzystać z konsoli mysql i sprawdzić, np. tak: mysql -uużytkownik -hlocalhost -p (tak, tam jest dwa razy u, pierwsze u to parametr a drugie to pierwsza litera słowa użytkownik) Co do niewyświetlania: zaglądałeś może do logów Apacza, szczególnie do logów błędów? Daj na początek programu coś takiego: <?php ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); /* i tu dopiero połączenie bez żadnych małp i orów */ $connection = mysql_connect('localhost', 'uzytkownik', 'haslo'); A w ogóle ustaw sobie w php.ini wyświetlanie wszystkich błędów i ostrzeżeń (domyślnie jest wyłączone, żeby zamieść pod dywan wszelkie babole i nieumiejętności programisty, coby mógł się pochwalić swoim arcydziełem przed każdym przedszkolaczkiem albo innym handlowcem). Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. 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
dan55 Maj 8, 2020 Autor tematu Udostępnij Maj 8, 2020 zmieniłem kod na coś: takiego: <?php // nawiazujemy polaczenie $connection = @mysqli_connect('localhost', 'uzytkownik', 'hasło') // w przypadku niepowodznie wyświetlamy komunikat or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error()); // połączenie nawiązane 😉 echo "Udało się połączyć z serwerem!<br />"; // nawiązujemy połączenie z bazą danych echo "łączę"; $db = @mysqli_select_db('test', $connection) // w przypadku niepowodzenia wyświetlamy komunikat or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error()); // połączenie nawiązane 😉 echo "Udało się połączyć z bazą dancych!"; // zamykamy połączenie mysqli_close($connection); ?> teraz łączy się z serwerem, natomiast nie łączy z bazą. kończy na wyświetleniu: "łączę" domontowałem kod wyłapujący błędy i wypluło dodatkowo: Fatal error: Uncaught Error: Call to undefined function mysql_error() in /var/www/html/testy/myskuli.php:16 Stack trace: #0 {main} thrown in /var/www/html/testy/myskuli.php on line 16 Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Maj 8, 2020 Udostępnij Maj 8, 2020 2 minuty temu, dan55 napisał: zmieniłem kod na coś: takiego: A na co miałeś zmienić? Nikt tu nie siedzi przy twojej malince, jak nie wyświetlasz błędów to nikt telepatycznie nie będzie ich szukać. Albo zrobisz to co napisałem wcześniej (czyli włączysz wyświetlanie błędów i jeśli nie zrozumiesz to zapytasz), albo zasuwaj na forum wróżek i czarodziejów 🙂 Aha, nad tym okienkiem w którym piszesz masz takie coś z narysowanym znaczkiem "<>" i napisem "Wstaw kod". Zastanów się do czego on służy i zacznij używać, bo nasza tolerancja się kończy przy czwartym poście 😉 Cytuj Link do komentarza Share on other sites More sharing options...
dan55 Maj 8, 2020 Autor tematu Udostępnij Maj 8, 2020 Moja Mama ostrzegała mnie ... Nie siedź tyle przed tym monitorem, bo to nie zdrowe i staniesz się mniej tolerancyjny. Teraz już wiem, że miała rację. Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!