Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Brak połączenia php i Mysql na xampp.
Forum PHP.pl > Forum > Przedszkole
arcydiakon
Witam, przerabiam sobie książeczkę Php5,Apache, MySQL od podstaw i zaciąłem się na rozdziale poświęconym bazom danych. Ustawiłem w php my admin użytkownika z wszystkimi uprawnieniami tak jak w przykładzie, mimo to za każdym razem wyskakuje mi komunikat : Warning: mysql_connect(): php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\xampp\htdocs\createmovie.php on line 6. Proszę o pomoc, próbowałem już wszystkiego i nic nie pomaga. Używam xampa, system to windows 7.
  1. <?php
  2. echo gethostbyname("host.name.tld");
  3. //połączenie z MySQL;użyłem tych parametrów w tworzeniu nowego usera w php.myadmin
  4.  
  5. $connect = mysql_connect("localhost" . "bp5am" . "bp5ampass") or die ("Sprawdź połączenie z serwerem.");
  6. // utwórz bazę danych jeśli jeszcze nie istnieje.
  7. $create = mysql_query("CREATE DATABASE IF NOT EXISTS moviesite")
  8. //wybierz nowo utworzoną bazę danych
  9. mysql_select_db("moviesite");
  10. //utwórz tabelę "movie"
  11. echo gethostbyname("host.name.tld");
  12. $movie = "CREATE TABLE movie (
  13. movie_id int(11) NOT NULL auto_increment.
  14. movie_name varchar(255) NOT NULL.
  15. movie_type tinyint(2) NOT NULL default 0.
  16. movie_year int(4) NOT NULL default 0.
  17. movie_leadactor int(11) NOT NULL default 0.
  18. movie_director int(11) NOT NULL default 0.
  19. PRIMARY KEY (movie_id).
  20. KEY movie_type (movie_type.movie_year)
  21. )";
  22. $results = mysql_query($movie)
  23. or die (mysql_error());
  24. // utwórz tabelę "movietype"
  25. $movietype = "CREATE TABLE movietype(
  26. movietype_id int(11) NOT NULL auto_increment.
  27. movietype_label varchar(100) NOT NULL.
  28. PRIMARY KEY (movietype_id)
  29. )";
  30. $results = mysql_query($movietype)
  31. //utwórz tabelę "people"
  32. $people = "CREATE TABLE people (
  33. people_id int(11) NOT NULL auto_increment.
  34. people_fullname varchar(255) NOT NULL.
  35. people_isactor tinyint(1) NOT NULL default 0.
  36. people_isdirector tinyint(1) NOT NULL default 0.
  37. PRIMARY KEY (people_id)
  38. )";
  39. $results = mysql_query($people)
  40. echo "Poprawnie utworzono bazę danych filmów. ";
  41. ?>

Drugi plik
  1. <?php
  2. //połączenie z serwerem MySQL
  3. $connect = mysql_connect("localhost". "bp5am". "bp5ampass")//takie same dane zostały ustawione w php.myadmin.
  4. or die ("Sprawdź połączenie z serwerem.");
  5. //uaktywnij odpowiednią bazę danych
  6. mysql_select_db("moviesite");
  7. //wstaw dane do tabeli "movie"
  8. $insert = "INSERT INTO movie (movie)id. movie_name. movie_type. ".
  9. "movie_year. movie_leadactor. movie_director) ".
  10. "VALUES (1. 'Bruce wszechmogący'. 5. 2003. 1.2).".
  11. "(2. 'Życie biurowe'. 5. 1999. 5. 6).".
  12. "(3. 'Wielki Kanion'. 2.1991. 4. 3)";
  13. $results = mysql_query($insert)
  14. //wstaw dane do tabeli "movietype"
  15. $type = "INSERT INTO movietype (movietype_id. movietype_label)".
  16. "VALUES (1. 'Sciencie fiction').".
  17. "(2. 'Dramat').".
  18. "(3. 'Przygoda').".
  19. "(4. 'Wojenny').".
  20. "(5. 'Komedia').".
  21. "(6. 'Horror').".
  22. "(7. 'Akcja').".
  23. "(8. 'Dla dzieci').";
  24. $results = mysql_query($type)
  25. //wstaw dane do tabeli "people"
  26. $people = "INSERT INTO people (people_id. people_fullname.".
  27. "[people_isactor. people_isdirector)".
  28. "VALUES (1. 'Jim carrey'. 1.0)".
  29. "(2. 'Tom Shadyac'.0.1).".
  30. "(3. 'Lawrence Kasdan'.0. 1).".
  31. "(4. 'Kevin Kline'. 1. 0) . ".
  32. "(5. 'Ron Livingston'. 1. 0).".
  33. "(6. 'Mike Judge'. 0. 1)";
  34. $results = mysql_query($people)
  35. echo "Dane zostały wstawione poprawnie";
  36. ?>


b4rt3kk
Zamiast kropek użyj przecinków.

  1. mysql_connect("localhost" , "bp5am" , "bp5ampass")


Poza tym chyba masz stare wydanie tej książki, bo w nowszych już bazują co najmniej na mysqli_
arcydiakon
witam, po poprawieniu przecinków wyskakuje You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id. movie_name. movie_type. movie_year. movie_leadactor. movie_director) VALUES ' at line 1, czyżby coś nie tak z wersją Mysql?
b4rt3kk
Coś nie tak z zapytaniem, kolejne wartości również powinieneś oddzielać przecinkiem a nie kropką.
arcydiakon
dzięki, pies pogrzebany był w zamianie kropki na przecinka. Daje plusa.

edit - Chyba coś jest poknocone w tej książce, teraz cały czas wyskakuje błąd Duplicate entry '1' for key 'PRIMARY' , opisywany przez innych użytkowników tej książki. smile.gif

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.