Erreurs
Résolu
Zakarya93
Messages postés
1026
Statut
Membre
-
Zakarya93 Messages postés 1026 Statut Membre -
Zakarya93 Messages postés 1026 Statut Membre -
Bonjour,
j'ai 2 erreurs : Warning: require(config/database.php): failed to open stream: No such file or directory in C:\wamp\www\rs\pages\register.php on line 89
Fatal error: require(): Failed opening required 'config/database.php' (include_path='.;C:\php\pear') in C:\wamp\www\rs\pages\register.php on line 89
Call Stack
Voici mon register.php :
Et mon functions.php :
Que faire svp ? Merci d'avance
j'ai 2 erreurs : Warning: require(config/database.php): failed to open stream: No such file or directory in C:\wamp\www\rs\pages\register.php on line 89
Fatal error: require(): Failed opening required 'config/database.php' (include_path='.;C:\php\pear') in C:\wamp\www\rs\pages\register.php on line 89
Call Stack
Voici mon register.php :
<h1>Inscription</h1>
<?php
if (!isset($_POST['submit']))
{
?>
<form method="POST" action="">
<label for='sexe'>Sexe</label>
<select name="sexe">
<?php echo isset($sexe)?'<option value='.$sexe.'>'.$sexe.'</option>':""; ?>
<?php echo $sexe != 'Homme' ?'<option value="Homme">Homme</option>':""; ?>
<?php echo $sexe != 'Femme' ?'<option value="Femme">Femme</option>':""; ?>
</select><br /><br/>
<label for="pseudo">Votre pseudo : </label>
<input type="text" name ="pseudo" value='<?php echo isset($pseudo) ? $pseudo :""; ?>'><br />
<label for="password">Votre password : </label>
<input type="password" name ="password"><br />
<label for="repeatpassword">Repetez votre password : </label>
<input type="password" name ="repeatpassword"><br />
<label for="email">Veuillez saisir votre email : </label>
<input type="text" name ="email" value='<?php echo isset($email) ? $email :""; ?>'><br />
<label for="apropos">A propos de vous </label>
<textarea rows="6" cols="30" name="apropos"><?php echo isset($apropos) ? $apropos : ""; ?></textarea><br /><br />
<input type="submit" value="S'inscrire" name="submit">
</form>
<?php
}
else
{
$sexe = htmlspecialchars(strip_tags($_POST['sexe']));
$pseudo = htmlspecialchars(strip_tags($_POST['pseudo']));
$password = htmlspecialchars(strip_tags($_POST['password']));
$repeatpassword = htmlspecialchars(strip_tags($_POST['repeatpassword']));
$email = htmlspecialchars(strip_tags($_POST['email']));
$apropos = htmlspecialchars(strip_tags($_POST['apropos']));
if(empty($pseudo))
{
$errors[] ="Veuillez saisir un pseudo";
}
if (empty($password))
{
$errors[] ="Veuillez saisir un password";
}
if($password != $repeatpassword)
{
$errors[] = "Vos deux password doivent être identiques";
}
if(!filter_var($email,FILTER_VALIDATE_EMAIL))
{
$errors[] = "Votre adresse email n'est pas correcte";
}
if(empty($apropos))
{
$errors[] = "Veuillez vous décrire en quelques lignes";
}
if(!empty($errors))
{
foreach($errors as $error)
{
echo "<div class='error'>".$error."</div>";
}
}
inscrire_utilisateur($pseudo,$password,$email,$sexe,$apropos);
die('Inscription terminée, vous pouvez vous <a href=\'index.php?page=login\'>connecter</a>');
}
?>
<?php
require('config/database.php');
require('includes/functions.php');
//si le formulaire a été soumis
if(isset($_POST['register'])) {
// si tous les champs sont remplis
if(not_empty(['name', 'pseudo', 'email', 'password', 'password_confirm'])) {
$errors = []; //tableau contenant l'ensemble des erreurs
extract($_POST);
//si le pseudo est deja dans la bdd
if(is_already_in_use('pseudo', $pseudo, 'users')) {
$errors[] = "Le pseudonyme est déja utilisé.";
}
//si l'adresse mail est deja dans la bdd
if(is_already_in_use('email', $email, 'users')) {
$errors[] = "L'adresse e-mail est déja utilisée.";
}
//si il y a 0 erreur
if(count($errors) == 0) {
//enregistrement du membre dans la base de données
$q = $db->prepare('INSERT INTO users(name, pseudo, email, password)
VALUES(:name, :pseudo, :email, :password)');
$q->execute([
'name' => $name,
'pseudo' => $pseudo,
'email' => $email,
'password' => ($password)
]);
redirect('index.php');
} else {
save_input_data();
}
} else {
//si tous les champs ne sont pas remplis
$errors[] = "Veuillez remplir s'il vous plaît tous les champs";
save_input_data();
}
} else {
clear_input_data();
}
?>
<?php require('views/register.views.php'); ?>
Et mon functions.php :
<?php
try
{
$bdd = new PDO ('mysql:host=localhost;dbname=rs;charset=utf8', 'root', '');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
function inscrire_utilisateur($pseudo,$password,$email,$sexe,$apropos)
{
Global $bdd;
$password=sha1($password);
$sql = "INSERT INTO utilisateurs(pseudo,password,email,sexe,apropos)
VALUES (:pseudo,:password,:email,:sexe,:apropos)";
$result = $bdd->prepare($sql);
$result->bindValue('pseudo', $pseudo, PDO::PARAM_STR);
$result->bindValue('password', $password, PDO::PARAM_STR);
$result->bindValue('email', $email, PDO::PARAM_STR);
$result->bindValue('sexe', $sexe, PDO::PARAM_STR);
$result->bindValue('apropos', $apropos, PDO::PARAM_STR);
$result->execute();
}
//vérifie que les données ne sont pas en double dans la base de données
if(!function_exists('is_already_in_use')) {
function is_already_in_use($field, $value, $table) {
global $db;
$q = $db->prepare("SELECT id FROM $table WHERE $field = ?");
$q->execute([$value]);
$count = $q->rowCount();
$q->closeCursor();
return $count;
}
}
Que faire svp ? Merci d'avance
A voir également:
- Erreurs
- Une ou plusieurs erreurs sont présentes dans le formulaire. merci de rectifier votre saisie en vous aidant des aides disponibles. - Forum VB / VBA
- Impossible d'installer java les commutateurs suivants comportent des erreurs ✓ - Forum Java
- Redémarrer pour réparer les erreurs de lecteur - Forum Windows 8 / 8.1
- J'ai le même probleme... si quelqu'un peut m'aider - Forum Facebook
- Analyse et réparation du lecteur C ✓ - Forum Windows 10
"Warning: require(config/database.php): failed to open stream: No such file or directory in C:\wamp\www\rs\pages\register.php on line 89 "
"require(config/database.php)" => la fonction qui rencontre un problème (warning)
"failed to open stream: No such file or directory" => ne trouve pas le fichier database.php par rapport au chemin spécifié
Donc, le chemin n'est pas bon. Essaie en faisant :
"require("/config/database.php");
Pour comprendre les chemins, je te conseille de lire quelques tutoriels comme celui-ci : http://www.php-astux.info/chemins-relatif-absolu.php
La réponse est bonne (concernant le pourquoi de l'erreur) .. la solution peut-être pas
La question à se poser est :
A quel endroit as tu placé tes fichiers database.php et functions.php ?
Les as tu mis au même endroit que ton script ou se trouvent ils dans d'autres répertoires de ton site ?