PHP #2

Créer des sessions et factoriser le code

Rappels

INSERT

<?php 

    $userName = $_POST["name"];
    $userAge = $_POST["age];
    
    $req = $connexion->prepare("INSERT INTO TABLE_NAME(name,age)
                                VALUES(:name,:age)");
    $req_e = $req->execute(array(
               'name'=>$userName,
               'age'=>$userAge
    ));
?>

Sélectionner des données

Requête

<?php 


    $monFiltre = "Toto";
    $req = $db->prepare('SELECT champ_1,champ_2, champ_3 
                            FROM maTable 
                            WHERE champ_1 = :quelqueChose');
    $req_e = $req->execute(array(
        'quelqueChose' => $monFiltre
    ));

?>

Sélectionner des données

Récupérer les résultats

Deux façons : 

FetchAll() : récupère tous les résultats sous forme de tableau

Fetch() : récupère une seule ligne

Sélectionner des données

Afficher les résultats - Avec un foreach

<?php 

    $monFiltre = "Toto";
    $req = $db->prepare('SELECT champ_1,champ_2, champ_3 
                            FROM maTable 
                            WHERE champ_1 = :quelqueChose');
    $req_e = $req->execute(array(
        'quelqueChose' => $monFiltre
    ));
    
    $resultats = $req->fetchAll();
    
    foreach($resultats as $result) {
        echo "Champ 1 :".$result["champ_1"]." <br/> Champ 2 :".$result["champ_2"];
    }
?>

FOREACH

<?php 
    $tableau = array('francois', 'Michel', 'Nicole');

    foreach($tableau as $key => value) {
        echo "Valeur :".$value." <br/> // Key :".$key;
    }
?>
Clé Valeur
0 francois
1 Michel
2 Nicole

Sélectionner des données

Afficher les résultats - Avec un while et fetch()

<?php 

    $monFiltre = "Toto";
    $req = $db->prepare('SELECT champ_1,champ_2, champ_3 
                            FROM maTable 
                            WHERE champ_1 = :quelqueChose');
    $req_e = $req->execute(array(
        'quelqueChose' => $monFiltre
    ));
    
    $resultats = $req->fetchAll();
    
    while($result = $req->fetch()) {
        echo "Champ 1 :".$result["champ_1"]." <br/> Champ 2 :".$result["champ_2"];
    }
?>

Les sessions

Connexion, déconnexion, variables de session

Pré-requis : formulaire

<form method="POST">

    <input type="email" placeholder="Email" name="email" />
    <input type="password" name="password" />
    <input type="submit" name="connexion" value="Connexion" />

</form>

Les sessions

Connexion, déconnexion, variables de session

Requête de connexion

<?php 

    if($_POST) {    
        $mail = $_POST["email"];
        $psw = $_POST["password"];
        
        $req = $db->prepare('SELECT COUNT(*) AS nb, utilisateur_id, nom, prenom 
                                FROM utilisateurs
                                WHERE email = :email AND password = :password');
        $req_e = $req->execute(array(
            'email'=>$mail,
            'password'=>$psw
        ));
    }

?>

Les sessions

Connexion, déconnexion, variables de session

Exploitation des résultats

<?php 
        // Suite du code
        
        $req_f = $req->fetch();
        $nb = $req_f["nb"];

        if($nb==1) {
            // On crée la session
            session_start();
            
            // On peut créer des variables de session qui vont nous servir pour la suite
            // Exemple : stocker le prénom
            $_SESSION["user_firstName"] = $req_f["prenom"];
        }
    }

?>

Les sessions

Connexion, déconnexion, variables de session

Afficher des erreurs

<?php 
        // Suite du code

        if($nb==1) {
            // On crée la session
            session_start();
            
            // On peut créer des variables de session qui vont nous servir pour la suite
            // Exemple : stocker le prénom de l'utilisateur
            $_SESSION["user_firstName"] = $req_f["prenom"];
        }
        else {
            // Le couple email/mdp est erroné
            echo "Le mail ou le mot de passe sont erronés";
        }
    }

?>

Les sessions

Connexion, déconnexion, variables de session

Lancer des sessions

<?php 

    session_start();

?>

Détruire une session

<?php 

    session_destroy();

?>

Factoriser le code

Include, require

Permet d'inclure des fichiers

 

Inclure systématiquement le fichier

include('connexion.php');

 

Inclure le fichier si ce n'est pas déjà fait

include_once('connexion.php');

Factoriser le code

Include, require

Inclure systématiquement le fichier

require('connexion.php');

 

Inclure le fichier si ce n'est pas déjà fait

require_once('connexion.php');

PHP #2

Des questions ? 

Comment trouver le bon riad à marrakech?

By Actualite

Comment trouver le bon riad à marrakech?

Après avoir réservé un billet pour le Maroc, la deuxième décision que les voyageurs doivent prendre est celle de l'endroit où ils vont séjourner. Après tout, vous aurez besoin d'un endroit pour dormir, vous doucher et vous détendre entre les balades à dos de chameau sur la plage, les achats de tapis faits à la main et les couscous aux légumes pendant votre voyage à forfait au Maroc ). Bien qu'il existe une grande variété de chaînes d'hôtels et de centres de villégiature de luxe dans tout le pays, chaque visiteur devrait envisager sérieusement de passer au moins quelques nuits dans un riad marocain. Mais qu'est-ce qu'un riad exactement ? Traditionnellement, un riad (qui signifie jardin en arabe) était une maison construite pour l'intimité d'une famille multigénérationnelle au Maroc. Les riads étaient construits hauts mais étroits, centrés autour d'une cour ou d'un atrium avec des chambres donnant sur l'intérieur. De l'extérieur, un riad ressemble à un mur de briques vierges ou de terre battue, une véritable forteresse avec une lourde porte et aucune fenêtre extérieure. De l'intérieur, les riads sont un rêve architectural, un lieu magique où l'accent est mis sur les balcons, les carreaux colorés et les jardins intérieurs. Des citronniers ou des orangers poussent souvent au centre, et les femmes de la maison y font la plupart de leurs activités sociales. Bien sûr, les riads traditionnels n'avaient pas l'eau courante. Les résidents se baignaient dans leur hammam local, ou bains publics. Aujourd'hui, les riads comme https://www.riad-vendome-marrakech.com/ sont un point fort lors d'une visite à Marrakech ou à Essaouria, où de nombreux bâtiments anciens ont été rénovés et modernisés avec des éléments essentiels et des touches modernes pour les clients qui y passent la nuit. L'eau courante et la plomberie sont standard, mais les piscines, les jardins sur les toits, les restaurants, les spas et les fontaines bouillonnantes le sont également. Le prix d'un riad se situe dans une fourchette allant du budget au super-échelle. Certains riads sont tellement luxueux et luxueux qu'ils méritent une visite. Quelques points à noter sur les riads avant de réserver votre séjour ... Il n'y a généralement qu'une seule entrée dans le riad qui reste fermée 24 heures sur 24. Les chambres intérieures n'ont souvent pas de serrure, alors vérifiez auprès du personnel avant de laisser des objets de valeur. Les riads appartiennent souvent à des étrangers et leur personnel est en grande partie composé de Marocains qui peuvent ne pas parler couramment l'anglais. Soyez prêt à faire quelques gestes si vous ne parlez pas bien le français ou l'arabe. Trouver votre riad peut être une aventure en soi, car ils sont situés dans des rues étroites et labyrinthiques et ne présentent pas de caractéristiques extérieures distinctives, à part peut-être un petit panneau. N'ayez pas peur d'utiliser une carte. Les riads sont si calmes, paisibles et magnifiques qu'il est facile de passer un jour ou deux à se reposer sur des coussins extérieurs et à siroter un thé à la menthe. Veillez à ne pas vous isoler du reste de la ville. Après une longue et passionnante journée d'exploration de Marrakech, il n'y a pas de meilleur sentiment que de se prélasser sur le toit d'un riad alors que le soleil se couche sur la ville forteresse, tout en écoutant l'appel à la prière d'une mosquée locale se répercuter sur les murs de l'ancienne ville. Vous aurez vraiment l'impression d'avoir votre propre sanctuaire intérieur.

  • 1,002