0

today I have a small problem I begin in php and I try to make a system to put online a file on my server. And when I put my file it dirt me that it does not manage to move it. It's a big problem for me and I would like to know if someone can help me :)

You can try it on https://lyrics.karibsen.fr/

My code html :

<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Genius upload</title>
    <link href="index.css" rel="stylesheet" type="text/css">
</head>

<script>
    function handleFiles(files) {
      var imageType = /^image\//;
      for (var i = 0; i < files.length; i++) {
      var file = files[i];
      if (!imageType.test(file.type)) {
        alert("Ce fichier n'est pas considèrer comme une image");
      }else{
        if(i == 0){
          preview.innerHTML = '';
        }
        var img = document.createElement("img");
        img.classList.add("obj");
        img.file = file;
        preview.appendChild(img); 
        var reader = new FileReader();
        reader.onload = ( function(aImg) { 
        return function(e) { 
        aImg.src = e.target.result; 
      }; 
     })(img);
   
    reader.readAsDataURL(file);
    }
    
    }
   }

    </script>

<body>
    <form id="gaia_loginform" action="index.php" method="post" _lpchecked="1">
<center>
  <br><br><br><br><br><br><br><br><br><br><br><br><br><br>

  <table>
    <tr> 
        <td><textarea style="resize: none;" name="nom" id="nom" max="50" type="text" autocomplete="off" placeholder="Titre"></textarea></td>
        <td><textarea style="resize: none;" name="artiste" id="artiste" type="text" autocomplete="off"></textarea></td>
        <td><input type="file" onchange="handleFiles(files)" name="fileToUpload" id="file-upload" class="inputfile"/></td>
        <td>Aperçu de l'image:<div><label for="upload"><span id="preview"></span></label></div></td>
    </tr>
  </center>
<center>

    <tr>
        <td><textarea style="resize: none;" name="parole" id="parole" type="text" autocomplete="off" placeholder="Parole"></textarea></td>

    </tr>
 </table>
    <input type="submit" value="Envoyer l'image" name="submit">
</form> 

</body>
</center>

</html>

My code php :

<?php
$nom = $_POST['nom'];
$artiste = $_POST['artiste'];
$parole = $_POST['parole'];

$nom = $nom.$artiste; 
if (is_dir($nom)) {
    echo 'Le répertoire existe déjà!';  
    }
    else {
        $name = str_replace(" ", "", $nom);
        mkdir($name); //je cree le dossier
        echo '1  ';  
        $target_dir = './'.$name; //je met le dossier a cibler
        echo $target_dir;
        echo '  2  ';  
        $target_file = $target_dir.basename($_FILES["fileToUpload"]["tmp_name"]); //ca decte le fichier a cible
        echo '  3  ';  
        echo $target_file;
        $uploadOk = 1;
        echo '  4  ';  
        echo '  5  ';
        echo $_FILES["fileToUpload"]["tmp_name"];
        if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {

        $myfile = fopen("$name/$name.html", "w") or die("Unable to open file!");
$txt = "
<!DOCTYPE html>
<html lang='en'>
<head>
    <meta charset='UTF-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <meta name='viewport' content='width=device-width, initial-scale=1.0'>
    <title>$artiste - $nom</title>
    $img
    <br><br><br>
    <center>$parole</center>
</head>
<body>
    
</body>
</html>";
fwrite($myfile, $txt);
fclose($myfile);

header('Location: https://lyrics.karibsen.fr/'.$name.'/'.$name.'.html');
exit();
        } else {
            header('Location: https://lyrics.karibsen.fr/');
            exit();
        }
    }



?>
Kora
  • 1

0 Answers0