Siemka.
Mam zrobioną baze danych i taka strone w PHP co mozna się zalogowac i zarejestrować i tam wpisywać swoje notatki. LEcz mam problem ponieważ wywala mi bład gdy chce się zalogować :błąd połączenia z bazą danych.
Jakby ktoś mogł pomoć to podeślę bazę na priv
Wrzuć tutaj swój kod PHP który używasz do łączenia się z bazą.
W tym pliku należy skonfigurowac i ustawić adres, login oraz hasło do bazy danych.
Nie wiem jak to zmienic zeby sie zalogowac tutaj plik cfg.php
<?php
/*WSB*/
$config['db_server'] = 'localhost/test'; //adres bazy danych
$config['db_user'] = 'USER'; //użytkownik bazy, domyślnie root
$config['db_pass'] = 'PASSWORD'; //hasło bazy, domyślnie ustalane podczas instalacji
$config['db_name'] = 'ksiegagosci';//nazwa stworzonej tabeli, przykładowo ksiegagosci
$connect = @mysql_connect ($config['db_server'], $config['db_user'], $config['db_pass']);
$sel = @mysql_select_db ($config['db_name']);
mysql_query("SET NAMES 'utf8'");
mysql_query("SET collation_connection = utf8_polish_ci");
if (!$connect) {
die ('<div class="error">Błąd połaczenia z bazą danych.</div>');
}
?>
a tu baza danych :
CREATE DATABASE ksiegagosci;
<br />
use ksiegagosci;
<br />
<br />
CREATE TABLE IF NOT EXISTS users (
<br />
id int(2) NOT NULL AUTO_INCREMENT,
<br />
login varchar(32) NOT NULL,
<br />
pass varchar(32) NOT NULL,
<br />
PRIMARY KEY (id)
<br />
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
<br />
<br />
CREATE TABLE IF NOT EXISTS wpisy (
<br />
datagodzina datetime NOT NULL,
<br />
wpis varchar(1000) NOT NULL
<br />
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
Zmień die na
die("Błąd: " . mysql_error());
To będzie wiadomo o jaki dokładnie błąd chodzi.
Poza tym mysql_
jest już przestarzałe i powinno się używać mysqli_
albo PDO
.
No tak tylko podobno to ma działać i działa tylko nie wiem co wpisać dokladnie w tych linijkach :
"$config['db_server'] = 'localhost/test'; //adres bazy danych
$config['db_user'] = 'USER'; //użytkownik bazy, domyślnie root
$config['db_pass'] = 'PASSWORD'; //hasło bazy, domyślnie ustalane podczas instalacji
$config['db_name'] = 'ksiegagosci';//nazwa stworzonej tabeli, przykładowo ksiegagosci"
Bo jak klikam zarejestruj się to teraz wyskakuje, pisząc : Błąd:
nie pisze co to za bład
Moge podeslac ci cala baze na priv
Te 4 linie które wkleiłeś to tablica. Mógłbyś równie dobrze użyć samych zmiennych do każdego pojedynczego pola i osiągnął byś to samo.
Twoja BD mi nie potrzebna, zmień jedną linię, tę którą podałem, to przynajmniej będziemy wiedzieć jaki konkretnie jest problem.
zmieniłem i pisze :
Bład i tyle a nie pisze jaki
Bo pewnie zapytania są poprawne. Trzeba umieścić to zaraz po próbie łączenia się z bazą:
<?php
$config['db_server'] = 'localhost/test'; //adres bazy danych
$config['db_user'] = 'USER'; //użytkownik bazy, domyślnie root
$config['db_pass'] = 'PASSWORD'; //hasło bazy, domyślnie ustalane podczas instalacji
$config['db_name'] = 'ksiegagosci';//nazwa stworzonej tabeli, przykładowo ksiegagosci
$connect = mysql_connect ($config['db_server'], $config['db_user'], $config['db_pass']);
if (!$connect) {
die (mysql_error());
}
$sel = mysql_select_db ($config['db_name']);
mysql_query("SET NAMES 'utf8'");
mysql_query("SET collation_connection = utf8_polish_ci");
Dodatkowo wywal te @
.
Warning: mysql_connect(): php_network_getaddresses: getaddrinfo failed: Nieznany host. in C:\xampp\htdocs\test\cfg.php on line 7
Warning: mysql_connect(): php_network_getaddresses: getaddrinfo failed: Nieznany host. in C:\xampp\htdocs\test\cfg.php on line 7
php_network_getaddresses: getaddrinfo failed: Nieznany host.
Nie jestem pewien, ale czy nie powinno być tylko localhost
zamiast localhost/test
?
pliki wszystkie mam w katalogu test, dlatego jest localhost/test :)
ten sam blad jest
A podajesz w ogóle login i hasło, dzięki któremu połączysz się z bazą danych?
$config['db_user'] = 'USER'; //użytkownik bazy, domyślnie root
$config['db_pass'] = 'PASSWORD'; //hasło bazy, domyślnie ustalane podczas instalacji
W tych miejscach podajesz login i hasło do bazy danych. Czyli zamiast USER wpisujesz login do bd a zamiast PASSWORD wpisujesz hasło do bd.
Zamień
$config['db_server'] = 'localhost/test'
na
$config['db_server'] = '127.0.0.1'
Teraz wlasnie jest blad " Nieznany host"
Warning: mysql_connect(): php_network_getaddresses: getaddrinfo failed: Nieznany host. in C:\xampp\htdocs\cfg.php on line 7
Warning: mysql_connect(): php_network_getaddresses: getaddrinfo failed: Nieznany host. in C:\xampp\htdocs\cfg.php on line 7
php_network_getaddresses: getaddrinfo failed: Nieznany host."
wklej wynik "netstat -a"
reptile333 napisał(a):
wklej wynik "netstat -a"
Czyli :p
- Windows + R
- Wpisuejsz
cmd.exe
- Następnie wpisujesz
netstat - a
https://zapodaj.net/93d918ae5f5d3.png.html
https://zapodaj.net/007bab60e1256.png.html
I jak widac cos po screenach?
A tak sie wtrące .. w ogóle do bazy przez phpMyAdmina możesz sie zalogować?
Poszło chyba do przodu : taki o to blad teraz gdy chce sie zarejestrowac:
Warning: mysql_connect(): Access denied for user 'USER'@'localhost' (using password: YES) in C:\xampp\htdocs\cfg.php on line 7
Access denied for user 'USER'@'localhost' (using password: YES)
a Gdy klikam zaloguj się na gorze jest napisane :
Notice: Undefined index: send in C:\xampp\htdocs\login.php on line 10
a pod spodem okienko do wpisania loginu i hasla
Ja ci proponuję jednak przeczytać jakieś podstawy kursu php bo co chwilę będziesz miał problemy z takimi banałąmi.
pierwszy błąd mówi o tym,że masz hasło na localhoscie a nie podałeś go w konfigu bazy
drugi o tym, że nie istnieje index send, bo zapewne, nie jest nawet sprawdzane czy istnieje coś takiego.