[Application 61] Passage de l’ ancien Back End Php-Mysql à PDO Mysql.

logo-phppompestation

Introduction


Avec Php 7 , mysql_real_escape_string() est discontinué.

Je passe donc le back end au format PDO en 1h30 de temps.

Cela ne change rien à ma technique de copié-collé pour chaque CRUD ..

Note : On peut spécifier le typage de variables dans les insert et les update pour ajouter à la sécurité, mais là je ne le fais pas.

Note 2 : A la fin d’une action SQL,le back end peut renvoyer un message JSON au front end qui peut l’afficher directement dans le front end dans la fonction de rappel de AngularJs, c’est le json nommé « data » qui contiendra le message… J’ai mis un exemple :
print_r(json_encode(‘Procédure Back end Ok’));

Pourquoi utiliser PDO et les requêtes préparées ?


  • Les requêtes préparées empêchent les injections SQL (Pour tester, essayer de rentrer un quote ‘, cela ne passe pas, hi hi !)
  • PDO devient le standard avec mysqli, mais est mieux que mysqli

Schéma :


vues

Le nouveau code :


Présence de 2 fichiers :

  • 1 pour la connexion
  • 1 pour tout le back end qui récupère les datas du front end (AngularJs dans ce cas). tout le back end est centralisé dans un seul fichier.

Lire la suite

Publicités

Code pour afficher les fichiers présents dans un répertoire dans un select

Introduction

Code pour afficher les fichiers présents dans un répertoire. tri préliminaire du tableau.

Explication : Le résultat de la fonction readir est récupérée dans un tableau, le tableau est trié, puis une autre fonction crée le select et l’alimente avec les données du tableau.

La variable peut ainsi être récupérée, on peut ainsi continuer le programme et traiter des fichiers au choix dans un navigateur.

Code

<HTML>
    <HEAD>
        <BODY BGCOLOR="#e7dfce">
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <FONT size="1pt" face="arial" >
</HEAD>

<BODY>
<center> <h1>Afficher dans un Select les liens vers un répertoire.</h1> </center>
 
<form action="retrouveFiltresTries.php" method="post" >
 
<?php
    // Ouverture du dossier, et mise des noms des fichiers dans un tableau puis tri avec la fonction sort()
    $folder = "/srv/www/";
    $dossier = opendir($folder);

    while ($Fichier = readdir($dossier)){
        $tableau[]=$Fichier;
        sort($tableau);
    };
    closedir($dossier);
    get_nom($tableau);

?>

<form action="retrouveFiltres.php" method="post" >
    <input type ="submit" name='Fichier' value="Fichier" />
</form>

<br></br>

<?php

    function get_nom($tableau){
        // Création du select, alimenté par les données du tableau.
        ?><FORM><SELECT name="choix" <?

        foreach ($tableau as $key => $val){
            set_time_limit(300);
            ?><option value="<? echo $val ; ?>"><? echo $val ; ?></option>";<?
        };

        closedir($dossier);
        echo "</SELECT>";
    };

    if(isset($_POST['Fichier'])){
        echo $_POST['choix'];
    };