Apprenez à créer un bot Telegram en PHP pour envoyer automatiquement les données d’un formulaire HTML vers un canal Telegram, étape par étape.
Pourquoi connecter un formulaire HTML à Telegram ?
Recevoir les messages de contact directement sur Telegram, c’est :
- plus rapide qu’un email
- consultable partout
- parfait pour les sites légers ou persos
- idéal pour être alerté instantanément
Et bonne nouvelle :
PHP + Telegram = combo simple et efficace.
Étape 1 : créer ton bot Telegram
Direction Telegram, ouvre une discussion avec @BotFather.
Commandes :
/start
/newbot
BotFather te demandera :
- un nom
- un username (obligatoirement terminé par bot)
À la fin, tu obtiens un TOKEN.
Garde-le comme un mot de passe.
Documentation officielle Telegram Bot API :
https://core.telegram.org/bots/api
Étape 2 : créer un canal Telegram
- Crée un canal Telegram
- Ajoute ton bot comme administrateur
- Autorise l’envoi de messages
Ensuite récupère l’ID du canal.
Format courant :
@nom_du_canal
ou
-1001234567890
Étape 3 : créer le formulaire HTML
Colle ici ton formulaire HTML :
<form action="send.php" method="post">
<input type="text" name="nom" placeholder="Votre nom" required>
<input type="email" name="email" placeholder="Votre email" required>
<textarea name="message" placeholder="Votre message" required></textarea>
<button type="submit">Envoyer</button>
</form> Étape 4 : créer le script PHP
Crée un fichier nommé send.php et colle le script suivant :
<?php
$token = "TON_TOKEN_ICI";
$chat_id = "@nom_du_canal";
$nom = htmlspecialchars($_POST['nom']);
$email = htmlspecialchars($_POST['email']);
$message = htmlspecialchars($_POST['message']);
$texte = "Nouveau message du formulaire\n\n";
$texte .= "Nom : $nom\n";
$texte .= "Email : $email\n";
$texte .= "Message :\n$message";
$url = "https://api.telegram.org/bot$token/sendMessage";
$data = [
'chat_id' => $chat_id,
'text' => $texte
];
file_get_contents($url . "?" . http_build_query($data));
Étape 5 : tester
- Envoie le formulaire
- Regarde ton canal Telegram
- Vérifie que le message arrive
Si ça ne marche pas :
- vérifie le TOKEN
- vérifie l’ID du canal
- assure-toi que le bot est admin
Sécurité minimale
À ne pas zapper :
- utiliser htmlspecialchars()
- vérifier que les champs existent
- éviter d’exposer ton fichier PHP publiquement
- ajouter un token CSRF si possible
Telegram ne remplace pas une vraie API sécurisée, mais pour un site simple, c’est largement suffisant.
Améliorations possibles
Tu peux aller plus loin :
- envoyer aussi l’IP du visiteur
- enregistrer les messages en base de données
- utiliser cURL au lieu de file_get_contents
- créer plusieurs bots pour différents formulaires
Conclusion
Créer un bot Telegram en PHP pour recevoir les données d’un formulaire HTML :
c’est simple
rapide à mettre en place
ultra pratique au quotidien
Pas besoin de framework lourd.
Juste PHP, Telegram et un peu de logique.