Bonjour les codeurs,

j'ai un petit soucis avec mon code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
 
 
<?php
// Connect to the DB
$link = mysqli_connect("monserveur","mon login","mon mot de pass","ma base de données") or die("Error " . mysqli_error($link));
 
// store in the DB 
if(!empty($_POST['Créer'])) {   
   // adding new products
   if(!empty($_POST['nom'])) {      
      foreach($_POST['nom'] as $cnt => $nom) {
         $sql = "INSERT INTO galerie (nom, description, image) VALUES ('$nom','".$_POST['description'][$cnt]."','".$_POST['image'][$cnt]."');";
         $link->query($sql);
         print("<script type=\"text/javascript\">setTimeout('location=(\"galerie.php?add=ok\")' ,1000);</script>");
 
         // Upload des images
 
      }
   }   
}
?>
.....
<form method="POST" name="galerie" id="form">
 
             <fieldset>
   <LEGEND align=top>Ajoutez vos images pour la galerie</LEGEND>
 
   <table width="60%" border="0" cellspacing="0" cellpadding="5">
   <tr><td colspan="2">
                          <?php if(isset($_GET['del']) && ($_GET['del'] == "ok")) { // Affiche l'erreur  ?>
                        <ul class="states">
                                   <li class="succes">L' (les) image(s)  à(ont) été supprimé(es) avec succès.</li></ul>
                                  <?php } ?>
        <?php if(isset($_GET['up']) && ($_GET['up'] == "ok")) { // Affiche l'erreur  ?>
                        <ul class="states">
                                   <li class="succes">L' (les) image(s)  à(ont) été uploadé(es) avec succès.</li></ul>
                                  <?php } ?>
 
                         <?php if(isset($_GET['add']) && ($_GET['add'] == "ok")) { // Affiche l'erreur  ?>
                                 <ul class="states"><li class="succes">L' (les) image(s)  à(ont) été créé avec succès.</li></ul>
                         <?php } ?>
 
   </td></tr></table>
    <div id="itemRows">
 
   <p>
    <label for="nom">nom: <input type="text" name="nom"  /></label>
    <label for="description"> Description: <input type="text" name="description" /></label>
    <label for="image"> Image: <input type="file" name="image" multiple accept="image/*" /></label>
 
 
   </p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
    <p>&nbsp;</p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
 
   <p>
     <input onClick="addRow(this.form);" type="button" value="Ajouter des images" /> 
     Les valeurs ci dessus ne seront sauvegardées qu'après avois cliqué sur "Ajouter des images.
Lorsque vous avez renseigné toutes vos images, cliquez sur le bouton "Créer" en bas du formulaire.</p>
 
 
   </div>
 <p><input name="Créer" type="submit" value="Créer" class="small button"></p>
             </fieldset>
                       </form>
<script type="text/javascript">
var rowNum = 0;
function addRow(frm) {
   rowNum ++;
   var row = '<p id="rowNum'+rowNum+'"><label for="nom">Nom: <input type="text" name="nom[]"  value="'+frm.nom.value+'"></label><label for="description">Description: <input type="text" name="description[]" value="'+frm.description.value+'"></label><label for="image"> Image: <input type="file" name="image[]"  value="'+frm.image.value+'"></label>
</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p><input type="button" value="Supprimer" onclick="removeRow('+rowNum+');"></p>
';
   jQuery('#itemRows').append(row);
   frm.nom.value = '';
   frm.description.value = '';
   frm.image.value = '';
}
 
function removeRow(rnum) {
   jQuery('#rowNum'+rnum).remove();
}
</script>
L'insertion sql se fait correctement.

Par contre si je remplace
Code : Sélectionner tout - Visualiser dans une fenêtre à part
print("<script type=\"text/javascript\">setTimeout('location=(\"galerie.php?add=ok\")' ,1000);</script>");
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
print("<script type=\"text/javascript\">setTimeout('location=(\"upload.php\")' ,1000);</script>");
Le script reste bloqué sur upload.php en page blanche, l'insert sql ne se fait pas et les uploads non plus .

Fichier upload.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
//If directory doesnot exists create it.
$output_dir = "../uploads/galerie/";
 
if(isset($_FILES["image"]))
{
   $ret = array();
 
   $error =$_FILES["image"]["error"];
   {
 
       if(!is_array($_FILES["image"]['name'])) //single file
       {
            $RandomNum   = time();
 
            $ImageName      = str_replace(' ','-',strtolower($_FILES['image']['name']));
            $ImageType      = $_FILES['image']['type']; //"image/png", image/jpeg etc.
 
            $ImageExt = substr($ImageName, strrpos($ImageName, '.'));
            $ImageExt       = str_replace('.','',$ImageExt);
            $ImageName      = preg_replace("/\.[^.\s]{3,4}$/", "", $ImageName);
            $NewImageName = $ImageName.'-'.$RandomNum.'.'.$ImageExt;
 
              move_uploaded_file($_FILES["image"]["tmp_name"],$output_dir. $NewImageName);
               //echo "<br> Error: ".$_FILES["image"]["error"];
                  print("<script type=\"text/javascript\">setTimeout('location=(\"galerie.php?up=ko\")' ,1000);</script>");
 
                  $ret[$fileName]= $output_dir.$NewImageName;
       }
       else
       {
            $fileCount = count($_FILES["image"]['name']);
          for($i=0; $i < $fileCount; $i++)
          {
                $RandomNum   = time();
 
                $ImageName      = str_replace(' ','-',strtolower($_FILES['image']['name'][$i]));
                $ImageType      = $_FILES['image']['type'][$i]; //"image/png", image/jpeg etc.
 
                $ImageExt = substr($ImageName, strrpos($ImageName, '.'));
                $ImageExt       = str_replace('.','',$ImageExt);
                $ImageName      = preg_replace("/\.[^.\s]{3,4}$/", "", $ImageName);
                $NewImageName = $ImageName.'-'.$RandomNum.'.'.$ImageExt;
 
                $ret[$NewImageName]= $output_dir.$NewImageName;
              move_uploaded_file($_FILES["image"]["tmp_name"][$i],$output_dir.$NewImageName );
          }
       }
    }
    echo json_encode($ret);
   print("<script type=\"text/javascript\">setTimeout('location=(\"galerie.php?up=ok\")' ,1000);</script>");
 
}
 
?>
Un petit coup de pouce serait bienvenu