Incompréhension
Résolu
Pierre_6790
-
jordane45 Messages postés 30427 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 30427 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour, je suis un grand débutant en terme de langage informatique. J'ai créé une base de données sur phpmyadmin via wampserver, le problème est que je ne sais pas comment faire pour la relier (la base de données) à mon code qui est sur sublime text. Si vous pouviez m'éclairer sur le sujet. Merci
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
peux-tu partager ton code, en tenant compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code -
C'est notamment ici que je requiert ma base de données
<?php namespace src\Calendar; class Events { /** * Récupère les évènements commençant entre 2 dates * @param \DateTime $start * @param \DateTime $end * @return array */ public function getEventsBetween (\DateTime $start, \DateTime $end): array { try{ $pdo =new PDO('mysql:host=localhost;dbname=calendar', 'root', 'root'); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $results) { $sql = "SELECT * FROM events WHERE start BETWEEN '{$start->format('Y-m-d 00:00:00')}' AND '{$end->format('Y-m-d 23:59:59')}'"; $statement = $pdo->query($sql); $results = $statement->fetchAll(); return $results; } } }
Et cette deuxième partie<?php require '../src/Calendar/Month.php'; require '../src/Calendar/Events.php'; $events = new Calendar\Events(); $month = new Calendar\Month($_GET['month'] ?? null, $_GET['year'] ?? null); $start = $month->getStartingDay(); $start = $start->format('N') === '1' ? $start : $month->getStartingDay()->modify('last monday'); $weeks = $month->getWeeks(); $end = (clone $start)->modify('+' . (6 + 7 * ($weeks -1)) . 'days'); $events = $events->getEventsBetween($start, $end); ?>
Sur localhost une erreur apparaît et me dit :
( ! ) Fatal error: Uncaught Error: Class 'Events' not found in C:\wamp64\www\site\public\index.php on line 19
( ! ) Error: Class 'Events' not found in C:\wamp64\www\site\public\index.php on line 19
Je suppose qu'il y a un problème d'emplacement de fichier. -
Bonjour,
Je n'ai pas lu l'intégralité de la discussion .. mais ...
Si tu utilises les namespace .. tu dois alors avoir un autoloader de class
Sinon, en faisant le require à la main.. il ne faut pas prefixer par le namespace
En grosrequire '../src/Calendar/Events.php'; $events = new Events();
En "namespace"use src\Calendar; $events = new Events();
De plus.. il ne faut pas mettre le chemin depuis la racine de ton disque C mais seulement depuis la racine de ton site ( je te l'ai déjà dit non ?? )
Enfin bon.. il serait utile tout de même que tu suives de vraies formations ou tutos (autrement qu'au format vidéo) ...
Si tu n'apprends pas les "bases" du langages, tu vas être paumé et tu vas devoir quémander de l'aide à chaque ridicule petite difficulté...