Outils pour utilisateurs

Outils du site


informatique:programmation:php

Ceci est une ancienne révision du document !


PHP

Opérateurs

if, ifelse, else

$var1 = 3;
$var2 = 3;

if ($var1 == $var2) {
  echo 'var1 egal a var2'."\n";
}
elseif ($var1 > $var2) {
  echo 'var1 superieur a var2'."\n";
}
elseif ($var1 < $var2) {
  echo 'var1 inferieur a var2'."\n";
}

switch

$myname = 'Benoit';

switch ($myname) {
  case 'Toto' :
    echo 'Ton nom est Toto'."\n";
  break;
  case 'Titi' :
    echo 'Ton nom est Titi'."\n";
  break;
  case 'Benoit' :
    echo 'Ton nom est Benoit'."\n";
  break;
  default :
    echo 'je ne sais pas ton nom'."\n";
}

for

$varfor = 10;
for ($i = 0; $i < $varfor; $i++) {
  echo $i.' inferieur a '.$varfor."\n";
}
echo $i.' egale a '.$varfor."\n";

while

$varwhile = 5;
$i = 0;
while ($i < $varwhile) {
  echo $i.' inferieur a '.$varwhile."\n";
  $i = $i + 1;
}

File système

Ouvrir, lire et écrire dans un fichier

$data = fopen('data.txt', 'w+');
// On ecrite texte
fputs ($data, "texte\n");
// On se positionne au 4eme caractere depuis le debut du fichier
fseek ($data, 4);
// On insere a o au cinquieme caractere
fputs ($data, "o\n");
// On reinsere tu texte partir de le sixieme postion
fseek ($data, 5);
fputs ($data, " ou SMS\n");
// On clos l'ouverture de fichier
fclose ($data);
//ON ROUVRE LE FICHIER ET affiche le contenu du fichier mais les 5 premiers caracteres
$data = fopen('data.txt', 'r');
$contenu = fgets ($data, 6);
echo $contenu."\n";

Web

Traiter un formulaire Web

Page de saisie (formulaire.php):

<html>
  <head>
    <title>Formulaire de test</title>
  </head>
  <body>
   <form action = "traitement.php" method="post">
     Votre nom : <input type = "text" name = "nom"></br>
     Votre age : <input type = "text" name = "age"></br>
     <input type = "submit" value = "Soumettre">
   </form>
  </body>
</html>

Page de traitement (traitement.php):

<html>
  <head>
    <title>Traitement du formulaire</title>
  </head>
  <body>
   <?php
       //Methode classique
       echo 'Votre Nom est '.$_POST['nom'].' et votre age est '.$_POST['age'].'</br>';
       //Methode simple, on récupère d'un coup toute les variables de type $_POST ce qui permet de simplifier la syntaxe pour l'usage des variables.
       extract ($_POST);
       echo 'Votre Nom est '.$nom.' et votre age est '.$age.'<br />';
   ?>
  </body>
</html>

Cookies

Page du formulaire (formulaire.php) :

<html>
  <head>
    <title>Formulaire de test</title>
  </head>
  <body>
  <?php
  // On verifie s'il le navigateur n'a pas de cookie nommé "pseudo" et qui à l'adresse de notre serveur Web.     
  if (isset($_COOKIE['pseudo'])) {
    echo 'Bonjour '.$_COOKIE['pseudo'];
  }
  //Sinon on rempli le formulaire pour se faire connaitre
  else {
    echo '<form action = "traitement.php" method="post">';
    echo '  Votre nom : <input type = "text" name = "nom"></br>';
    echo '  Votre age : <input type = "text" name = "age"></br>';
    echo '  <input type = "submit" value = "Soumettre">';
    echo '</form>';
  }
  ?>
  </body>
</html>

Page de traitement (traitement.php) :

<?php
if (isset ($_POST['nom'])) {
  //On défini la durée de validité de notre cookies, ci-dessous 120 secondes
  $temp = 120;
  // On crée le Cookie en récupérant la valeur de "nom" saisie dans le formulaire.
  setcookie ("pseudo", $_POST['nom'], time() + $temp);
  // Fonction permettant de faire des redirections
  function redirection($url){
    if (headers_sent()){
      print('<meta http-equiv="refresh" content="0;URL='.$url.'">');
    }
    else {
      header("Location:$url");
    }
  }
  // On lance la fonction de redirection pour rediriger l'internaute vers formulaire.php
  redirection ('formulaire.php');
}
else {
  echo 'La variable du formulaire n\'est pas déclarée.';
}
?>

Sessions

Nous allons créer 4 pages :

  • Page contenant notre formulaire de saisie de login et mot de passe (index.htm)
  • Page permettant de traiter le formulaire et de traiter les paramètres de session (login.php)
  • Page affichant le contenu de la section membre (page_membre.php)
  • Page permettant de se déconnecter (logout.php)

index.htm

<html>
<head>
<title>Formulaire de Login</title>
</head>
<body>
<form action="login.php" method="post">
Votre login : <input type="text" name="login"><br />
Votre mot de passe : <input type="password" name="pwd"><br />
<input type="submit" value="Connexion">
</form>
</body>
</html>

login.php

<?php
// Ci-dessous les login et mot de passe valides defini en dur. Ces donnees seraient peut placees en base de données
$login_valide = "moi";
$pwd_valide = "lemien";
// On verifie que le login et le mot de passe du formulaire sont definis
if (isset($_POST['login']) && isset ($_POST['pwd'])){
  // On compare le login et le mot de passe du formulaire avec les login et pass valide defini plus haut
  if ($login_valide == $_POST['login'] && $pwd_valide == $_POST['pwd']){
    // S'ils correspondent on demarre la session
    session_start ();
    // On enregistre les parametres comme variables de sessions
    $_SESSION['login'] = $_POST['login'];
    $_SESSION['pwd'] = $_POST['pwd'];
    // On recupere quelques parametre concernant notre session
    $_SESSION['ID'] = session_id();
    $_SESSION['name'] = session_name();
    // On redirige le visiteur authentifié vers notre section membre
    header ('location: page_membre.php');
  }
  else {
    // Sinon le visiteur est non reconnu
    echo '<body onLoad="alert(\'Membre non reconnu...\')">';
    echo '<meta http-equiv="refresh" content="0;URL=index.htm"';
  }
}
else {
  echo 'Veuillez renseigner tous les champs';
}
?>

page_membre.php

<?php
// On demarre la session (ceci est a faire sur toutes les pages de notre section membre
session_start();
// On recupere nos variables de session pour valider que les login et pass sont toujours valide avant d'afficher le contenu
if (isset($_SESSION['login']) && isset($_SESSION['pwd'])) {
  echo '<html>';
  echo '<head>';
  echo '<title>Page de notre section membre</title>';
  echo '</head>';
  echo '<body>';
  // On affiche quelque elements relatifs à notre session
  echo 'Votre login est '.$_SESSION['login'].' et votre mot de passe est '.$_SESSION['pwd'].'.<br />';
  echo 'Votre NOM de session '.$_SESSION['name'].' et votre ID de session est '.$_SESSION['ID'].'.<br />';
  echo '</body>';
  echo '<a href="./logout.php">Deconnection</a>';
}
else {
  echo 'Vous n\'etes pas authentifier';
}
?>

logout.php

<?php
// On demarre la session (comme dans toute nos pages membres
session_start ();
// On supprime les variables de session
session_unset ();
// On detruit notre session
session_destroy ();
// On redirige le visiteur sur la page d'accueil
header ('location: index.htm');
?>

Upload de fichier

upload.htm

<html>
<head>
<title>Formulaire pour envoyer un fichier</title>
</head>
<body>
<form action="send_fichier.php" method="post" enctype="multipart/form-data">
Votre fichier : <input type="file" name="mon_fichier">
              <input type="hidden" name="MAX_FILE_SIZE" value=200000000000>
              <input type="submit" value="Envoyer">
</form>
</body>
</html>

send_fichier.php

<html>
<head>
<title>Page de récupération du fichier</title>
</head>
<body>
<?php
// On test si les variable sont défnies
if (isset($_FILES['mon_fichier']['name']) && isset($_FILES['mon_fichier']['size']) && isset($_FILES['mon_fichier']['tmp_name']) && isset($_FILES['mon_fichier']['type']) && isset($_FILES['mon_fichier']['error'])) {
  // On affiche les différentes valeurs relatives a notre fichier
  echo 'Nom d\'origine : '.$_FILES['mon_fichier']['name'].'<br />';
  echo 'Taille : '.$_FILES['mon_fichier']['size'].'<br />';
  echo 'Nom sur le serveur : '.$_FILES['mon_fichier']['tmp_name'].'<br />';
  echo 'Type de fichier : '.$_FILES['mon_fichier']['type'].'<br />';
  echo 'Code erreur : '.$_FILES['mon_fichier']['error'].'<br />';

  // Ci-dessous on enregistre le fichier dans son répertoire définitif
  $dir_destination = '/var/www/test-php';
  move_uploaded_file($_FILES['mon_fichier']['tmp_name'], $dir_destination.'/'.$_FILES['mon_fichier']['name']);
}
else {
        echo 'Nos variables ne sont pas déclarées.';
}
?>
</body>
</html>

Base de données

<?php
  // On defini les parametre d'acces a la base de donnees dans une variable
  $param_access_db = mysql_connect ('127.0.0.1', 'root', 'abcd1234');
  // On se connect a la base de données "phpdb" avec les parametre de la variable ci-dessus
  mysql_select_db ('phpdb', $param_access_db);

  // On stock le requete SQL dans une variable
  $sql = 'SELECT * FROM liste_proprietaire';
  // On lance la requete
  $req = mysql_query($sql);
  // On stock les donnees dans un tableau
  $data = mysql_fetch_array($req);
  // On libere le memoire
  mysql_free_result ($req);
  // Ci-dessous on ne peut afficher qu'un seul resultat
  echo 'Nom :'.$data['nom']."\n";
  echo "\n";

  // On stock la requete SQL dans une variable
  $sql = 'SELECT * FROM liste_proprietaire';
  // On lance la requete
  $req = mysql_query($sql) or die ('Erreur SQL :'.$sql.":\n".mysql_error()."\n");
  // Tant qu'il y a des resultat a notre requete les affiches comme on veut
  while ($data = mysql_fetch_array($req)) {
    echo 'Nom :'.$data['nom']."\n";
    echo 'Tel :'.$data['telephone']."\n";
    echo "\n";
  }
  // On libere le memoire
  mysql_free_result ($req);

  // On ferme la connexion SQL
  mysql_close ();
?>

Voir sql pour connaitre les requêtes SQL

Librairie GD

informatique/programmation/php.1318909070.txt.gz · Dernière modification: 2018/09/06 19:00 (modification externe)