Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Błąd z połączeniem MySQL po hostingu plików.
Forum PHP.pl > Forum > Przedszkole
JaNieUmiem
Witam, to znowu ja, z kolejnym problemem.
Stronkę mam gotową, zewnętrzne pliki PHP podłączone, więc postanowiłem wreszcie wrzucić stronę na jakiś hosting. Nie była ona jakoś bardzo kreatywna i profesjonalna, więc postanowiłem wrzucić ją na darmowy hosting (friko.pl)
Gdy ją testowałem mój formularz szedł prosto do MySQL i nie było żadnych problemów. Za to po wrzuceniu strony na hosting zaczął się pojawiać błąd.
Może pokażę skrypt zewnętrznego pliku PHP, którego stosuję do wysłania danych do bazy.
  1. <?php
  2. $zmienna1 = $_POST['zmienna1'];
  3. $zmienna1 = $_POST['zmienna1'];
  4.  
  5. if($zmienna1 and $zmienna2) {
  6.  
  7. $connection = @mysql_connect('localhost', 'root', 'TUTAJ PRÓBOWAŁEM I Z HASŁEM DO FTP I BEZ NIEGO - NIC NIE DZIAŁAŁO')
  8.  
  9. or die('Error. Bad connection, try again later.');
  10.  
  11. $db = @mysql_select_db('formularz', $connection)
  12.  
  13. or die('Error. Please try again later.');
  14.  
  15. $ins = @mysql_query("INSERT INTO test SET zmienna1='$zmienna1', zmienna2='$zmienna2'");
  16.  
  17. if($ins) header("Location: http://MojaPodstrona.php");
  18.  
  19. mysql_close($connection);
  20. }
  21. ?>

Błąd pojawiał się o treści "Error. Please try again later". Sam ustawiałem treści błędów, są tylko 2, toteż wiadomo z czym jest problem >> $db = @mysql_select_db('test', $connection) <<
Proszę (znów) o pomoc.
JaNieUmiem
A można jakoś prościej? (nie ogarniam)
viking
Prościej. Wywalić wszystkie @, zastosować to co napisał nospor w linkowanym temacie. Przeczytać go w całości bo praktycznie te same problemy.
JaNieUmiem
Usunąłem @, zastosowałem to, co pisał Nospor i wyświetla się po przejściu do sent.php taka wiadomość:

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

  1. <?php
  2. $zmienna1 = $_POST['zmienna1'];
  3. $zmienna2 = $_POST['zmienna2'];
  4.  
  5. if($zmienna1 and $zmienna2) {
  6.  
  7. $connection = mysql_connect('localhost', 'root', 'MOJE HASŁO DO FTP')
  8. $db = mysql_select_db('test', $connection)
  9.  
  10. $ins = mysql_query("INSERT INTO test SET zmienna1='$zmienna1', zmienna2='$zmienna2'");
  11.  
  12. if($ins) header("Location: MojaPodstrona.php");
  13.  
  14. mysql_close($connection);
  15. }
  16.  
  17. ?>

Dalej nie działa
help
viking
I jesteś absolutnie pewien ze host to localhost?
JaNieUmiem
W poradnikach mówili, że zazwyczaj jest localhost.
Sprawdzę, ale powiedz mi tylko jak się to robi.
Tak, tego też JaNieUmiem...
viking
Juz ci trueblue powiedzial jak masz to sprawdzić. W poradnikach dużo głupot mówią ale to nie znaczy że masz nie myśleć samodzielnie.
JaNieUmiem
Gdy klikam na "Bazy danych" to wyświetla się "Nie posiadasz żadnych baz danych"
leonpro778
Jak nie posiadasz to raczej nie połączysz się z żadną bazą danych. Musisz ją najpierw stworzyć.

P.s. Tak tak... wiem... powinienem dać coś w stylu facepalm biggrin.gif
JaNieUmiem
Ok...
W takim razie jak mam ten kod napisać?
bostaf
Cytat(JaNieUmiem @ 14.06.2017, 16:15:53 ) *
Ok...
W takim razie jak mam ten kod napisać?

Tak poczytałem Twoje poprzednie posty i wydawało mi się, że te podstawy - co to jest baza danych i w jaki sposób php pobiera dane z bazy znasz. Ale teraz mam wrażenie, ze nie. Chyba, że to pytanie to dowcip. Albo rzeczywiście szukasz alternatywy dla MySQL.
Napisz tu poważnie w czym problem to dostaniesz konkretną odpowiedź. Jeśli dostałeś zadanie domowe i nie jarzysz, to ktoś Cię nakieruje na jakiś tutorial. Jeśli chcesz gotowca to też napisz, to ktoś Ci zaoferuje pomoc w dziale giełda...
JaNieUmiem
Najwyraźniej trafiłem na jakieś dziadowskie poradniki...
Ja chcę przesłać formularz do bazy danych. Mniejsza o to jak i gdzie.
Byleby się tam znalazły. Początki są najtrudniejsze...
I wiem, że te forum przyzwyczaiło się pewnie do poważniejszych i bardziej skomplikowanych pytań, ale ja potrzebuję prostej, klarownej odpowiedzi.

Gdzie te pola formularza w końcu wysłane? Jak sprawdzić nazwę mojego hosta (localhost czy inaczej)?
Mi, niestety, trzeba tłumaczyć jak w przedszkolu właśnie.. Jakby ktoś mógł to bardzo byłbym wdzięczny, gdyby został tu podeslany prosty poradnik jak to działa po wrzuceniu strony do internetu. Przede wszystkim do jakiej bazy to zostanie wysłane i jak zrobić to w kodzie?

Przypomnę może, że mam hosting na friko.pl
trueblue
Przypomnę Ci, że friko.pl ma podstronę pomocy dla użytkowników. Nie trzeba umieć programować, aby podjąć próbę znalezienia odpowiedzi na nurtujące pytanie.
http://pomoc.friko.pl/dzialy_6_8_zakladanie_bazy_danych.html
JaNieUmiem
A formularz trafia do mojej bazy MySQL na serwerze (localhost/phpmyadmin), czy do bazy danych na friko.pl?
Jeśli na friko.pl to co umieścić w kodzie?
Jeśli na moim serwerze to jaki mam błąd w skrypcie?
viking
Localhost to pętla zwrotna lokalnego komputera więc tak na pewno nie dokonasz połaczenia. Mogę ci tylko doradzić żebyś sobie darował. Rzadko to mówię ale widać że programisty z ciebie nie będzie. Szkoda męczyć nas i siebie. I tak nic nie rozumiesz z tego co piszemy.
JaNieUmiem
No to sobie odpuść jak nie chcesz pomagać. Ja nie mam zamiaru, bo ja zrobiłem formularz, który działał i przesyłał dane do mojej bazy.
Tylko jak zrobić, by po hostingu te dane też były przesyłane.
Dalej czekam na odpowiedź. Naprawdę będę wdzięczny
robert0770
localhost to taki adres jakby który kieruje sam na siebie, kiedy masz stronkę na swoim komputerze domowym i wpisujesz localhost (w konfiguracji mysql) to łączysz się z serwerem mysql na swoim komputerze, ale jeżeli twoja strona jest wgrana na serwer friko to strona już nie łączy się z Twoją bazą danych w domu tylko z bazą danych na friko (punkt widzenia zależy od punktu siedzenia)

przyjmijmy że localhost = jezioro
a strona = człowiek

kiedy człowiek jest na mazurach to widzi jakieś jezioro mazurskie ale jak już jesteś na pomorzu to widzisz jezioro pomorskie

tak więc:

mając stronę na friko musisz zrobić tam bazę danych (podczas tworzenia bazy danych pewnie dostaniesz informacje na jaki host kierować połączenie -> pewnie to będzie localhost)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.