🐘 PHP Backend

🚀 Apprendre PHP (de 0 à solide)

📌 C'est quoi PHP ?

PHP est un langage exécuté sur le serveur. Contrairement à JavaScript, il s'exécute AVANT que la page arrive dans ton navigateur.

👉 Il sert à :

🧱 Syntaxe de base

<?php
echo "Bonjour !";
?>

👉 echo permet d'afficher du texte

📦 Les variables

<?php
$nom = "Jean";
$age = 20;

echo $nom;
?>

⚠️ En PHP, les variables commencent toujours par $

⚖️ Conditions

<?php
$age = 18;

if($age >= 18){
  echo "Majeur";
} else {
  echo "Mineur";
}
?>

🔁 Boucles

<?php
for($i = 0; $i < 5; $i++){
  echo $i;
}
?>

📋 Tableaux

<?php
$fruits = ["pomme", "banane", "orange"];

echo $fruits[0];
?>

📥 Formulaire (SUPER IMPORTANT)

<form method="POST">
  <input name="nom">
  <button>Envoyer</button>
</form>

<?php
if(isset($_POST["nom"])){
  echo "Bonjour " . $_POST["nom"];
}
?>

👉 $_POST permet de récupérer les données

🌐 GET (URL)

url: site.com?nom=Jean

<?php
echo $_GET["nom"];
?>

🗄️ Connexion à une base de données

<?php
$conn = new PDO(
  "mysql:host=localhost;dbname=test",
  "root",
  ""
);
?>

🔍 Lire des données

<?php
$sql = "SELECT * FROM users";
$result = $conn->query($sql);

foreach($result as $row){
  echo $row["nom"];
}
?>

➕ Ajouter des données

<?php
$sql = "INSERT INTO users (nom) VALUES ('Jean')";
$conn->exec($sql);
?>

🔐 Sécurité (TRÈS IMPORTANT)

$stmt = $conn->prepare("SELECT * FROM users WHERE nom = ?");
$stmt->execute([$nom]);

👉 Toujours utiliser prepare() pour éviter le piratage (SQL injection)

🚀 Mini projet : système de message

👉 Objectif :

<form method="POST">
  <input name="message">
</form>

<?php
if(isset($_POST["message"])){
  $msg = $_POST["message"];
  $conn->exec("INSERT INTO messages (contenu) VALUES ('$msg')");
}
?>

🐞 Erreurs fréquentes

🧠 Exercice

👉 Crée :