Miniature article
- Accueil
- Forum
- Programmation
- PHP
- Miniature article
frrbob Le 24 septembre 2019 à 18:37 (Édité le 6 octobre 2019 à 03:05)
<?php
session_start();
$host = "localhost";
$dbName="xxxxx";
$user = "xxxx";
$password = "xxxxxxx";
//connexion
try{
$dsn = "mysql:host=$host;dbname=$dbName";
$options = array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8' );
$dbh = new PDO($dsn, $user, $password, $options);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Échec lors de la connexion : ' . $e->getMessage();
}
/* Traitement du formulaire de création de Topic */
if(isset($_SESSION['id'])) {
if(isset($_POST['tsubmit'])) {
if(isset($_POST['tsujet'],$_POST['tcontenu'])) {
$sujet = htmlspecialchars($_POST['tsujet']);
$contenu = htmlspecialchars($_POST['tcontenu']);
if(!empty($sujet) AND !empty($contenu)) {
if(strlen($sujet) <= 70) {
if(isset($_POST['tmail'])) {
$notif_mail = 1;
} else {
$notif_mail = 0;
}
$ins = $dbh->prepare('INSERT INTO f_t (id_createur, sujet, contenu, notif_createur, date_heure_creation) VALUES(?,?,?,?,NOW())');
$ins->execute(array($_SESSION['id'],$sujet,$contenu,$notif_mail));
$lastid = $dbh->lastInsertId();
if(isset($_FILES['miniature']) AND !empty($_FILES['miniature']['name'])) {
if(exif_imagetype($_FILES['miniature']['tmp_name']) == 2) {
$chemin = 'miniature/'.$lastid.'.jpg';
move_uploaded_file($_FILES['miniature']['tmp_name'], $chemin);
} else {
$message = 'Votre image doit être au format jpg';
}
}
} else {
$terror = "Votre sujet ne peut pas dépasser 70 caractères";
}
$message = 'Votre produit est mis en vente';
} else {
$terror = "Veuillez compléter tous les champs";
}
}
}
} else {
$terror = "Veuillez vous connecter pour poster un nouveau topic";
}
require('views/nouveau_topic.view.php'); /* Appel du fichier "vue" de notre page */
?>
Profil introuvable Le 24 septembre 2019 à 19:04 (Édité le 1 janvier 1970 à 01:00)
frrbob Le 24 septembre 2019 à 19:08 (Édité le 1 janvier 1970 à 01:00)
SkinDePewDiePie_ Le 27 septembre 2019 à 20:08 (Édité le 1 janvier 1970 à 01:00)
Suffit de remplacer la variable $dsn par mon code:
$dsn = "mysql:host=".$host.";dbname=".$dbName;
Et donc ton code devrait fonctionner (en théorie)
Si cette reponsé t'as aidé, met ton topic en Résolu, et met moi comme message qui t'a aidé ça prends 2s et ça aide des personnes 😀
frrbob Le 1 octobre 2019 à 03:55 (Édité le 1 octobre 2019 à 03:59)
Profil introuvable Le 1 octobre 2019 à 04:07 (Édité le 1 octobre 2019 à 04:08)
Un forum c'est fait pour s'entraider et apprendre de ces erreurs également...
Les tutoriels vidéos et les tutoriels écrits sont aussi bons. Mais c'est surtout qu'il faut relire son code plusieurs fois pour voir ce que l'on a pas oublié...
Il y a plus de réponses en anglais qu'en français car l'informatique c'est l'anglais le plus souvent utilisé pour les messages d'erreurs, quelque soit les terminaux (IFE, Panneau publicitaire...etc.)
Le Sitedudev est pas mal aussi 😉
Profil introuvable Le 1 octobre 2019 à 04:11 (Édité le 1 janvier 1970 à 01:00)
Peux-tu founir le lien du topic de PHPFrance que je jette un coup d'oeil ? (si tu le veux bien)
Donc si tu n'as plus de soucis, tu peux cliquer sur le bouton 😉
SkinDePewDiePie_ Le 2 octobre 2019 à 10:14 (Édité le 1 janvier 1970 à 01:00)
@Jerem971, je dit que certains tutoriaux vidéos sont oudated.
Par exemple, j'ai suivi au début te tuto de tictech.info pour mon serveur mail, ce qui ne fonctionnait pas, du coup j'ai utilisé celui de DigitalOcean (hébérgeur aux USA), et ca fonctionne alors que j'avais pas la même version que dans le tuto.
Profil introuvable Le 2 octobre 2019 à 14:07 (Édité le 1 janvier 1970 à 01:00)
Okay je comprends mieux... Le mieux alors c'est de vérifier la date d'un tuto ou d'un topic...
Quand je vois encore des gens qui commentent les vidéos YouTube de Boris quand il était gosse... Franchement...
Il faudrait plutôt suivre la formation HTML/CSS de Jonathan qui elle est à jour...
frrbob Le 4 octobre 2019 à 22:14 (Édité le 1 janvier 1970 à 01:00)
Sinon pour afficher un pseudo dans l'éspace commentaire c'est la même méthode que pour les topics j'imagine.
frrbob Le 4 octobre 2019 à 22:35 (Édité le 4 octobre 2019 à 22:38)
il suffit de liée les table article et membre, puis de relier miniature et membre, puis afficher sur la page dans l'ordre de l'id. et pour synchroniser la table article et miniature vous obliger le passage pour poster une miniature avant de poster un topic, comme ça les 2 table auront le m^me id. c'etait compréhensible?
et si vous souhaitez plusieurs catégories vous faites les mêmes manip mais en changent le nom des tables. pareil pour les likes et les commentaires, seul la table membre doit rester dans le code
Profil introuvable Le 5 octobre 2019 à 19:11 (Édité le 1 janvier 1970 à 01:00)
Okay 😉
Si tu n'as plus de problème, tu peux mettre en "Résolu" et sélectionner la réponse qui t'a aider 😉