Pieslēgšanās datu bāzei
$connection = new mysqli("localhost", "lietotajs",
"parole", "db_nosaukums");
// pārbaudam vai pieslēgšanās notikusi veiksmīgi,
// ja nē izvada kļūdas paziņojumu un pārtrauc skripta izpildi
if (mysqli_connect_errno()) {
printf("Neizdevās pieslēgties: %s\n", mysqli_connect_error());
exit();
}
printf("Informācija par serveri: %s\n", $dblink->host_info);
/* aizver pieslēgumu datu bāzei*/
$connection->close();
printf()
$skaitlis1 = 1;
$skaitlis2 = 2;
$teksts1 = 'pirmais';
$teksts2 = 'otrais';
printf("skaitlis: %d
\n", $skaitlis1);
printf("skaitlis 1: %d un teksts 2: %s
\n", $skaitlis1, $teksts2);
printf("vēl vairāk: %s; %d; %s; %d
\n", $teksts2, $skaitlis2, $teksts1, $skaitlis1);
Datu nolasīšana
$sql = "SELECT actor_id, first_name, last_name FROM actor
WHERE actor_id = $aid";
if (!$result = $connection->query($sql)) {
// Pieprasījums nenostrādāja.
echo "Kļūda pieprasījumā.";
echo "Query: " . $sql . "\n";
echo "Errno: " . $connection->errno . "\n";
echo "Error: " . $connection->error . "\n";
exit;
}
Datu nolasīšana
if ($result->num_rows === 0) {
// Netika atgriezts neviens rezultāts.
echo "Nav aktiera ar ID $aid.";
exit;
}
Datu nolasīšana
$actor = $result->fetch_assoc();
echo "Aktieris: " . $actor['first_name'] . " " . $actor['last_name'];
Vairāki rezultāti
$sql = "SELECT actor_id, first_name, last_name FROM actor
ORDER BY rand() LIMIT 5";
if (!$result = $mysqli->query($sql)) {
echo "Kļūda pieprasījumā.";
exit;
}
Vairāki rezultāti
echo "<ul>\n";
while ($actor = $result->fetch_assoc()) {
echo "<li><a href='aktieris.php?aid=" . $actor['actor_id'] . "'>\n";
echo $actor['first_name'] . ' ' . $actor['last_name'];
echo "</a></li>\n";
}
echo "</ul>\n";
Jauna ieraksta pievienošana
$sql = "INSERT INTO actor (first_name, last_name)
VALUES ('John', 'Doe')";
if ($connection->query($sql) === TRUE) {
echo "Jauns ieraksts saglabāts.";
} else {
echo "Kļūda pieprasījumā: " . $sql . "
" . $connection->error;
}
Pieslēgšanās DB izmantojot PDO
Sesiju mainīgo izmantošana
- Pēc tam kad sesija ir tikusi inicializēta, sesijas masīvā var saglabāt vai no tās nolasīt datus.
- Lai griestos pie sesijas mainīgajiem, lieto sekojošu sintaksi $_SESSION['mainiga_nosaukums'];
session_start();
if (!isset($_SESSION["skaits"])){
$_SESSION["skaits"] = 1;
}else{
$_SESSION["skaits"]++;
}
echo "Lapa ielādēta ". $_SESSION["skaits"]." reizes";
isset(mainīgais)
- Funkcija isset() atgriež vērtību „patiess”, ja šāds mainīgais ir izveidots un „nepatiess”, ja tas nav izveidots.
- Funkcija darbojas ne tikai ar sesijas mainīgajiem, bet ar jebkuru mainīgo.
if (!isset($_SESSION["skaits"])){
$_SESSION["skaits"] = 1;
}else{
$_SESSION["skaits"]++;
}
Sesiju pielietojums lietotāju autorizēšanai
- Pieņemsim, ka lietotājs iepriekš jau ticis reģistrēts.
- Kad lietotājs sekmīgi autorizējas, sesijas masīvā $_SESSION kādā brīvi izvēlētā mainīgajā jāieraksta, ka tekošais lietotājs ir sekmīgi autorizējies (piem $_SESSION['is_logged_in']=true;).
if( isset($_SESSION['is_logged_in']) &&
$_SESSION['is_logged_in'] == true)
{
//uzskatam ka lietotājs ir autorizēts
}
Sesiju pielietojums lietotāju autorizēšanai
- Ja lietotājs vairs nav autorizējies, tad dzēšam šo mainīgo
- Vai arī iznīcinam visu sesiju
unset($_SESSION['is_logged_in']);
session_destroy();
Sesiju pielietojums lietotāju autorizēšanai
- ir jānodrošina, lai mainīgā $_SESSION['is_logged_in'] vērtību varētu mainīt tikai funkcijas, kas pārbauda vai lietotājs autorizējas vai beidz autorizāciju.
- Ir ieteicams izveidot atsevišķu funkciju, kas pārbauda vai lietotājs ir autorizēts un citur kodā izmantot tikai šo funkciju un negriezties tiešā formā pie šī mainīgā.
Sesiju pielietojums lietotāju autorizēšanai
function is_authorised(){
return $_SESSION['is_logged_in'];
}
if(is_authorised()==true){
// parādam informāciju kas pieejama tikai autorizētiem lietotājiem
}
Sesiju pielietojums lietotāju autorizēšanai
Kļūdains piemērs (tiek izmantota piešķiršana, nevis salīdzināšana):
if ($_SESSION['is_logged_in'] = true){
}
Sīkdatnes
setcookie('cepuma_nosaukums','Selga');
if (isset($_COOKIE['x'])){
setcookie('x',$_COOKIE['x']+1,time()+360000);
}else{
setcookie('x',0,time()+360000);
}
echo $_COOKIE['x'];
echo '
';
echo $_COOKIE['cepuma_nosaukums'];
Sīkdatnes
- Sīkdatnes bieži vien tiek izmantotas lai izsekotu publisku tīmekļa vietņu apmeklētāju uzvedību.
- Sīkdatnēs saglabātie mainīgie kļūst pieejami tikai nākamajā lapas ielādes reizē.
- Ja nepieciešams izdzēst mainīgo no sīkdatnes, tad jālieto tā pati funkcija set_cookie() ar tieši tādiem pašiem parametriem kā veidojot šo sīkdatnes mainīgo, izņemot beigu termiņš jānorāda pirms patreizējā brīža.
setcookie('x',$_COOKIE['x']+1, time()-10);
- Augsupielādētā faila apstrāde ar PHP
if (is_uploaded_file($_FILES['datne']['tmp_name'])) {
if (copy($_FILES['datne']['tmp_name'],
"C:/mana/mape/".$_FILES['datne']['name'])) {
echo "Datne veiksmīgi augšupielādēta";
} else {
echo "Kļūda";
}
} else {
echo "Nekorekta datne";
}