Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][mysql] łączenie z bazą i zapytanie do bazy
Forum PHP.pl > Forum > Przedszkole
mattii
witam,

do tej pory łączyłem się z bazą tak:

$bd_lacz = new mysqli('localhost', 'root', 'qwerty', 'baza');

if (mysqli_connect_errno()) {
echo 'Poł±czenie z baz± danych nie powiodło się: '.mysqli_connect_error();
exit();
}

i zapytanie do bazy tak robiłem:

$zapytanie = 'select * from users '
."where login='$iduzytkownika' "
." and haslo='$haslo'";

$wynik = $bd_lacz->query($zapytanie);
if($wynik->num_rows > 0)
{
// jeżeli dane s± w bazie zarejestrowanie identyfikatora użytkownika
$_SESSION['prawid_uzyt'] = $iduzytkownika;
}
$bd_lacz->close();
}

oczywiscie nizej formularz logowania itp... - wszystko działało.

przeobiłem łączenie do bazy na:


w pliku gdzie będzie zapytanie daje:

// podlaczamy plik db_connect.php
require "pliki/php/db_connect.php";
// wywoluje funkcje db_connect()
db_connect();


a w pliku db_connect mam:

<?php

function db_connect() {
// serwer
$mysql_server = "localhost";
// admin
$mysql_admin = "root";
// hasło
$mysql_pass = "qwerty";
// nazwa baza
$mysql_db = "baza";
// nawiązujemy połączenie z serwerem MySQL
@mysql_connect($mysql_server, $mysql_admin, $mysql_pass)
or die('Brak połączenia z serwerem MySQL.');
// łączymy się z bazą danych
@mysql_select_db($mysql_db)
or die('Błąd wyboru bazy danych.');
}

?>

i mam pytanie jak powinna wyglądać ta linijka z pierwszego sposobu na łączenie z bazą:

$wynik = $bd_lacz->query($zapytanie);

po zastosowaniu drugiego sposobu questionmark.gif
nospor
dokladnie tak:
http://pl.php.net/manual/en/function.mysql-query.php

zacznij uzywac bbcode
mattii
czyli mam :

$zapytanie = 'select * from users '
."where login='$iduzytkownika' "
." and haslo='$haslo'";
$wynik = mysql_query($zapytanie);


if($wynik->num_rows > 0)
{
// jeżeli dane s± w bazie zarejestrowanie identyfikatora użytkownika
$_SESSION['prawid_uzyt'] = $iduzytkownika;
}

}


i błędu już mi nie wywala winksmiley.jpg



ale problem mam taki, że nie chce mi zalogowac tego użytkownika :/

formularz logowania mam taki:

<?php
if(isset($_SESSION['prawid_uzyt']))
{
echo 'Użytkownik zalogowany jako: '.$_SESSION['prawid_uzyt'];

echo 'menu które ma się stawać widoczne po zalogowaniu';

}
else
{
if(isset($iduzytkownika))
{
// jeżeli próba logowania była nieudana
echo 'Zalogowanie niemożliwe.<br />';
}
else
{
// nie było próby logowania lub nast±piło wylogowanie
echo 'Użytkownik niezalogowany.<br />';
}

// tworzenie formularza logowania
echo '<form method="post" action="index.php">';

echo '<p>Login: ';
echo '<input type="text" name="iduzytkownika" size="6">';
echo '<p>Hasło:';
echo '<input type="password" name="haslo" size="6">';
echo '<p><input type="submit" value="Logowanie">';
echo '</form>';
}
?>
lukasamd
Zamiast:
Kod
if($wynik->num_rows > 0)


daj:

Kod
if(mysql_num_rows($wynik) > 0)


BTW. Czy to nie bez sensu, przechodzić z mysqli na mysql?
PS: nospor'owi chyba nie o takie użycie bbcodów chodziło biggrin.gif

EDIT:
A nie mówiłem? biggrin.gif
nospor
Mowiac "zacznij uzywac bbcode" mialem na mysli dla kodu php [PHP] a nie [I]
mattii
co do BBCode obiecuje poprawe ;]

BTW. Czy to nie bez sensu, przechodzić z mysqli na mysql?


ucze sie dopiero php wiec nie czuje jeszcze roznicy wyczytałem na razie że mysqli jest nowsze i daje szersze mozliwosci - tak wiec zostać przy pierwotnym sposobie łączenia się z baząquestionmark.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.