Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Laik w bazie danych - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Początkujący webmaster (https://www.webmastertalk.pl/forum-poczatkujacy-webmaster)
+--- Wątek: Laik w bazie danych (/thread-laik-w-bazie-danych)

Strony: 1 2 3


RE: Laik w bazie danych - messi19125 - 26-02-2012

Napisałem go już w pierwszym poście.

Kod:
<html>
<head>
  <title>Rezultaty wyszukiwania</title>
</head>
<body>
<h1>Rezultaty wyszukiwania </h1>
<?php
  // utworzenie krótkich nazw zmiennych
  $metoda_szukania=$_POST['metoda_szukania'];
  $wyrazenie=trim($_POST['wyrazenie']);

  $wyrazenie = trim($wyrazenie);

  if (!$metoda_szukania || !$wyrazenie) {
     echo 'Brak parametrów wyszukiwania. Wróć do poprzedniej strony i spróbuj ponownie.';
     exit;
  }

  if (!get_magic_quotes_gpc()) {
    $metoda_szukania = addslashes($metoda_szukania);
    $wyrazenie = addslashes($wyrazenie);
  }

@ $db = new mysqli('localhost', 'root', 'hasło', 'ksiazki');

  if (mysqli_connect_errno()) {
     echo 'Błąd: Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
     exit;
  }

  $zapytanie = "select * from ksiazki where ".$metoda_szukania." like '%".$wyrazenie."%'";
  $wynik = $db->query($zapytanie);

  $ile_znalezionych = $wynik->num_rows;

  echo "<p>Ilość znalezionych pozycji: ".$ile_znalezionych."</p>";

  for ($i=0; $i <$ile_znalezionych; $i++) {
     $wiersz = $wynik->fetch_assoc();
     echo "<p><strong>".($i+1).". Tytuł: ";
     echo stripslashes($wiersz['tytul']);
     echo "</strong><br />Autor: ";
     echo stripslashes($wiersz['autor']);
     echo "<br />ISBN: ";
     echo stripslashes($wiersz['isbn']);
     echo "<br />Cena: ";
     echo stripslashes($wiersz['cena']);
     echo "</p>";
  }

  $wynik->free();
  $db->close();

?>

</body>
</html>



RE: Laik w bazie danych - Pedro84 - 27-02-2012

Wiem, ja się wolę po prostu upewnić Wink

Możliwości, musisz to sprawdzić:
1. host, na którym słucha MySQL
2. port
3. hasło konta root

Innych rozwiązań nie ma. Swoją drogą, skoro się na tym nie znasz, nie lepiej sobie kupić hosting za circa paręnaście złotych miesięcznie?


RE: Laik w bazie danych - messi19125 - 27-02-2012

To ja już nie wiem co się dzieje skoro wyskakuje mi błąd nawet gdy stworzyłem bazę danych na hostingu 000webhost.com.
Dostałem takie dane:
$mysql_host = "mysql1.000webhost.com";
$mysql_database = "a2673455_ksiazki";
$mysql_user = "a2673455_login";
$mysql_password = "hasło";

I po wpisaniu tego kodu nadal wyskakuje błąd:
Kod:
<html>
<head>
  <title>Rezultaty wyszukiwania</title>
</head>
<body>
<h1>Rezultaty wyszukiwania </h1>
<?php
  // utworzenie krótkich nazw zmiennych
  $metoda_szukania=$_POST['metoda_szukania'];
  $wyrazenie=trim($_POST['wyrazenie']);

  $wyrazenie = trim($wyrazenie);

  if (!$metoda_szukania || !$wyrazenie) {
     echo 'Brak parametrów wyszukiwania. Wróć do poprzedniej strony i spróbuj ponownie.';
     exit;
  }

  if (!get_magic_quotes_gpc()) {
    $metoda_szukania = addslashes($metoda_szukania);
    $wyrazenie = addslashes($wyrazenie);
  }

@ $db = new mysqli('mysql1.000webhost.com', 'a2673455_login', 'hasło', 'a2673455_ksiazki');

  if (mysqli_connect_errno()) {
     echo 'Błąd: Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
     exit;
  }

  $zapytanie = "select * from ksiazki where ".$metoda_szukania." like '%".$wyrazenie."%'";
  $wynik = $db->query($zapytanie);

  $ile_znalezionych = $wynik->num_rows;

  echo "<p>Ilość znalezionych pozycji: ".$ile_znalezionych."</p>";

  for ($i=0; $i <$ile_znalezionych; $i++) {
     $wiersz = $wynik->fetch_assoc();
     echo "<p><strong>".($i+1).". Tytuł: ";
     echo stripslashes($wiersz['tytul']);
     echo "</strong><br />Autor: ";
     echo stripslashes($wiersz['autor']);
     echo "<br />ISBN: ";
     echo stripslashes($wiersz['isbn']);
     echo "<br />Cena: ";
     echo stripslashes($wiersz['cena']);
     echo "</p>";
  }

  $wynik->free();
  $db->close();

?>

</body>
</html>



RE: Laik w bazie danych - Pedro84 - 27-02-2012

Kur....

http://www.php.net/manual/en/mysqli.quickstart.connections.php

Czytaj i się ucz!

Cytat:The hostname localhost has a special meaning. It is bound to the use of Unix domain sockets. It is not possible to open a TCP/IP connection using the hostname localhost you must use 127.0.0.1 instead.

W momencie kiedy nie łączysz się po socketach, musisz podać port, standardowo 3306.