Probleme dans mes codes

Fermé
Big79824113 Messages postés 9 Date d'inscription jeudi 24 novembre 2016 Statut Membre Dernière intervention 21 décembre 2016 - Modifié par jordane45 le 28/11/2016 à 11:13
 Utilisateur anonyme - 8 déc. 2016 à 18:26
Bonjour,
je vous uploader un fichier mais voila l'erreur qu'on me renvoie move_uploaded_file(uploads/2.png) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\Rapport\envoyer.php on line 84.Quelqu'un peut m'aider et voila mes codes:

  <?php
    session_start();
    // on vérifie toujours qu'il s'agit d'un membre qui est connecté
    if (!isset($_SESSION['entreprise'])) {
     // si ce n'est pas le cas, on le redirige vers l'accueil
     header ('Location: connexion.php');
     exit();
    }

// on teste si le formulaire a bien été soumis
    if (isset($_POST['go']) && $_POST['go'] == 'Envoyer') {
     if (empty($_POST['destinataire']) || empty($_POST['titre']) || empty($_POST['message'])) {
     $erreur = 'Au moins un des champs est vide.';
     }
     else {
     $base = mysql_connect ('localhost', 'root', '');
     mysql_select_db ('testmessagerie', $base);

// si tout a été bien rempli, on insère le message dans notre table SQL
     $sql = 'INSERT INTO messages VALUES("", "'.$_SESSION['id'].'", "'.$_POST['destinataire'].'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['titre']).'", "'.mysql_escape_string($_POST['message']).'")';
     mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

mysql_close();

header('Location: membre.php');
     exit();
     }
    }
    ?>

<html>
    <head>
    <title>Espace membre</title>
    </head>

<body>
    <a href="membre.php" rel="nofollow noopener noreferrer" target="_blank">Retour à l'accueil</a><br /><br />
    Envoyer un message :<br /><br />

<?php
    $base = mysql_connect ('localhost', 'root', '');
    mysql_select_db ('testmessagerie', $base);

// on prépare une requete SQL selectionnant tous les login des membres du site en prenant soin de ne pas selectionner notre propre login, le tout, servant à alimenter le menu déroulant spécifiant le destinataire du message
    $sql = 'SELECT messagerie.entreprise as nom_destinataire, messagerie.id as id_destinataire FROM messagerie WHERE id <> "'.$_SESSION['id'].'" ORDER BY entreprise ASC';
    // on lance notre requete SQL
    $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
    $nb = mysql_num_rows ($req);

if ($nb == 0) {
     // si aucun membre n'a été trouvé, on affiche tout simplement aucun formulaire
     echo 'Vous êtes le seul membre inscrit.';
    }
    else {
     // si au moins un membre qui n'est pas nous même a été trouvé, on affiche le formulaire d'envoie de message
     ?>
     <form action="envoyer.php" method="post" enctype="multipart/form-data">
     Pour : <select name="destinataire">

<?php
     // on alimente le menu déroulant avec les login des différents membres du site
     while ($data = mysql_fetch_array($req)) {
     echo '<option value="' , $data['id_destinataire'] , '">' , stripslashes(htmlentities(trim($data['nom_destinataire']))) , '</option>';
     }
     ?>
     </select><br />
     Titre : <input type="text" name="titre" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>"><br />
     Message : <textarea name="message"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?></textarea><br />
     <input type="file" name="monfichier" /><br />
      <?php
// Testons si le fichier a bien été envoyé et s'il n'y a pas d'erreur
if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error']== 0)
{
// Testons si le fichier n'est pas trop gros
if ($_FILES['monfichier']['size'] <= 1000000)
{
// Testons si l'extension est autorisée
$infosfichier =pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif','png','exe','pdf','doc');
if (in_array($extension_upload,$extensions_autorisees))
{
// On peut valider le fichier et le stocker définitivement
move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/'.basename($_FILES['monfichier']['name']));
//move_uploaded_file($_FILE['monfichier']['tmp_name'], $location.'/'.$_FILE['monfichier']['name']);


}
}
}?>


<input type="submit" name="go" value="Envoyer">
     </form>
     <?php
    }
    mysql_free_result($req);
    mysql_close();
    ?>
    </select>

<br /><br /><a href="deconnexion.php" rel="nofollow noopener noreferrer" target="_blank">Déconnexion</a>
    <?php
    // si une erreur est survenue lors de la soumission du formulaire, on l'affiche
    if (isset($erreur)) echo '<br /><br />',$erreur;
    ?>
    </body>
    </html>

EDIT : Ajout des balises de code (jordane45)

2 réponses

DerkoFR Messages postés 504 Date d'inscription vendredi 7 novembre 2014 Statut Membre Dernière intervention 5 janvier 2017 74
28 nov. 2016 à 09:56
Bonjour,

Merci d'utilisé les balises.
<.code><./code> (sans les points.)

Alexandre.


0
Big79824113 Messages postés 9 Date d'inscription jeudi 24 novembre 2016 Statut Membre Dernière intervention 21 décembre 2016
28 nov. 2016 à 10:09
Merci!mais ne m'a pas ete fourni comme reponse a mon probleme
0
Big79824113 Messages postés 9 Date d'inscription jeudi 24 novembre 2016 Statut Membre Dernière intervention 21 décembre 2016
28 nov. 2016 à 10:09
Merci!mais rien ne m'a pas ete fourni comme reponse a mon probleme
0
DerkoFR Messages postés 504 Date d'inscription vendredi 7 novembre 2014 Statut Membre Dernière intervention 5 janvier 2017 74
28 nov. 2016 à 10:17
Je peux pas comprendre.

Modifie ton code avec les balises fournies.
0
Utilisateur anonyme
8 déc. 2016 à 18:26
Bonjour,

A la ligne 83, tu vérifie si le fichier à été envoyer ou non.
Seulement php te dit qu'il ne trouve pas ce fichier.
1- Essaye de remplacer la ligne 81 jusqu'a 103 par ça:

  <?php
// Testons si le fichier a bien été envoyé et s'il n'y a pas d'erreur
if (isset($_FILES['monfichier']))
{
echo 'Fichier trouvé !<br>';
if ($_FILES['monfichier']['error']== 0){
echo 'Pas d\'erreur dans le fichier<br>';
// Testons si le fichier n'est pas trop gros
if ($_FILES['monfichier']['size'] <= 1000000)
{
echo 'Taille du fichier correct<br>';
// Testons si l'extension est autorisée
$infosfichier =pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif','png','exe','pdf','doc');
if (in_array($extension_upload,$extensions_autorisees))
{
echo 'Extension du fichier autorisé<br>'
// On peut valider le fichier et le stocker définitivement
move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/'.basename($_FILES['monfichier']['name']));
//move_uploaded_file($_FILE['monfichier']['tmp_name'], $location.'/'.$_FILE['monfichier']['name']);
}else {echo 'Extension du fichier non-autorisé<br>';}
}else {echo 'Fichier trop gros<br>';}
}else {echo 'Erreur dans le fichier<br>';}
}{echo 'Fichier introuvable<br>';}
?>


2- Essaye de crée un fichier localement, pour que php vérifie sont existance et tu inclus.
0