Duomenų bazė
Prisijungimas prie duomenų bazės.
Argumentai:
<?php
// Bandome prisijungti prie DB
$connection = mysqli_connect(
'localhost',
$username,
$password,
$dbname
);
// Patikriname ar prisijungimas pavyko
if( false === $connection ) {
// ką daryti, jei įvyko klaida?
}
?>
UTF-8 koduotės nustatymas.
Argumentai:
<?php
// Bandome prisijungti prie DB
$connection = mysqli_connect(
'localhost',
$username,
$password,
$dbname
);
// Patikriname ar prisijungimas pavyko
if( false === $connection ) {
// ką daryti, jei įvyko klaida?
}
// koduotės nustatymas
mysqli_set_charset( $connection, 'utf8' );
?>
Supakuota į funkciją
<?php
// Bandome prisijungti prie DB
function db_connect() {
$connection = mysqli_connect(
'localhost',
$username,
$password,
$dbname
);
// Patikriname ar prisijungimas pavyko
if( false === $connection ) {
// ką daryti, jei įvyko klaida?
return mysqli_connect_error();
}
mysqli_set_charset( $connection, 'utf8' );
return $connection;
}
?>
mysqli_query()
Argumentai:
Rezultatas - mysqli objektas.
<?php
// Bandome prisijungti prie DB
$connection = db_connect();
// Suformuojame užklausą
$query = "SELECT * FROM `products`";
// Siunčiame užklausą į MySQL
$result = mysqli_query($connection,$query);
?>
<?php
// Bandome prisijungti prie DB
$connection = db_connect();
// Suformuojame užklausą
$query = "SELECT * FROM `products`";
// Siunčiame užklausą į MySQL
$result = mysqli_query($connection,$query);
// nuskaitome eilutes į masyvą
$rows = array();
while ($row = mysqli_fetch_assoc($result)) {
$rows[] = $row;
}
?>
Duomenų išgavimas
Argumentai:
<?php
function db_query($connection,$query) {
// siunčiame užklausą į MySQL
$result = mysqli_query($connection,$query);
// nuskaitome eilutes į masyvą
if (false === $result) {
return mysqli_error($connection);
} else {
$rows = array();
while ($row = mysqli_fetch_assoc($result)) {
$rows[] = $row;
}
return $rows;
}
}
?>
Galutinis variantas
<?php
// Bandome prisijungti prie DB
$connection = db_connect();
// Suformuojame užklausą
$query = "SELECT * FROM `products`";
// Siunčiame užklausą į MySQL
// ir gauname eilučių masyvą.
$row = db_query($connection,$query);
// toliau dirbame su rezultatais
// pvz. išvedame naudojant print_r()
// arba foreach() ciklą
?>
Prisijungimo forma, tikrinama
<?php
$connection = db_connect();
$query = "SELECT * FROM `users` WHERE
`password`='{$_POST['pass']}'
AND
`user`='{$_POST['user']}'
";
$row = db_query($connection,$query);
if (sizeof($row)>0) {
// rodyti slaptą informaciją
}
?>
POST duomenys:
SELECT * FROM `users` WHERE `password`='labas' AND `user`='Petras'
<?php
$connection = db_connect();
$query = "SELECT * FROM `users` WHERE
`password`='{$_POST['pass']}'
AND
`user`='{$_POST['user']}'
";
$row = db_query($connection,$query);
if (sizeof($row)>0) {
// rodyti slaptą informaciją
}
?>
POST duomenys:
SELECT * FROM `users` WHERE `password`='blab' AND `user`='Petras'
<?php
$connection = db_connect();
$query = "SELECT * FROM `users` WHERE
`password`='{$_POST['pass']}'
AND
`user`='{$_POST['user']}'
";
$row = db_query($connection,$query);
if (sizeof($row)>0) {
// rodyti slaptą informaciją
}
?>
POST duomenys:
SELECT * FROM `users` WHERE `password`='blab' OR 'a'='a' AND `user`='Petras'
<?php
$connection = db_connect();
$query = "SELECT * FROM `users` WHERE
`password`='{$_POST['pass']}'
AND
`user`='{$_POST['user']}'
";
$row = db_query($connection,$query);
if (sizeof($row)>0) {
// rodyti slaptą informaciją
}
?>
mysqli_real_escape_string
<?php
$connection = db_connect();
$user = mysqli_real_escape_string(
$connection, $_POST['user']
);
$pass = mysqli_real_escape_string(
$connection, $_POST['pass']
);
$query = "SELECT * FROM `users` WHERE
`password`='{$pass}'
AND
`user`='{$user}'
";
$row = db_query($connection,$query);
if (sizeof($row)>0) {
// rodyti slaptą informaciją
}
?>
Patobulinti ankstesniame laboratoriniame darbe sukurtą registracijos formą - saugoti duomenis į duomenų bazę.
Sukurti užsiregistravusių žmonių peržiūros langą.