Tout d'abord, bonjour à tous !

Je me présente brièvement : Je bosse sur un projet, une sorte d'"annuaire" de vidéos youtube avec php/mysql.

Je suis confronté à un problème très gênant qui me bloque alors que j'ai pratiquement tout fini :

Je voudrais ajouter plusieurs parties automatiquement (c'est à dire plusieurs formulaires à la suite d'un autre formulaire qui est la video principale) dans la base de données (pour ensuite qu'elle s'affiche).
Pour ce faire, j'ai une variable $nbpart choisie initialement par la personne qui va poster ces parties, par exemple "3" parties supplémentaires.

Avec cette valeur plusieurs formulaires vont s'afficher automatiquement avec une boucle (donc 3 formulaires dans le cas présent).
J'aimerai ensuite récupérer la valeur des formulaires et les ajouter dans ma base de données, cependant mon code ne veut pas marcher et c'est la première fois que je tente de coder un truc aussi compliqué.

Etudions les parties de mon code concernées :



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
//Changement des variables
 
$nom = $_POST['nom'];
$video = $_POST['video'];
$lecteur = $_POST['lecteur'];
$resu = $_POST['resume'];
$cate = $_POST['cate'];
$tc = $_POST['tc'];
$nbpart = $_POST['part'];
 
if ($nbpart >= 1)
{
//on place un compteur pour indiquer le nombre de parties différentes dans la boucle
$i = 1;
$iii = 0;
$iiii = 1;
$ii= $iii+1;
//Tant que le nombre du compteur est inférieur au nombre de parties on lance la boucle suivante
 
echo '
<p><br />Ajouter '.$nbpart.' partie(s) supplementaires (lien) : </p>
<p><form method="post" action="parties.php"></p> 
<p><input name="'.$nbpart.'" type="hidden" /></p>
 ';
 while ($iii < $nbpart)
 
 {
 
 echo' <p>'.$iiii.'<sup>ère</sup>Partie : 
 <input name="name'.$iiii.'" type="text" /><br /><br /></p>';
$iii++;
$iiii++;
 }
 
 echo' 
 <p>
    <select name="lecteur" id="lecteur">
    <option value="1">Youtube</option>
    <option value="2">Dailymotion</option>
	<option value="3">Megavideo</option>
	<option value="4">Veoh</option>
	<option value="5">Google</option>
	<option value="6">Wideo</option>
	<option value="7">Wat.tv</option>
    </select>
</p>
<p>
    <select name="cate" id="cate">
    <option value="1">Manga</option>
    <option value="2">Films</option>
    <option value="3">S&eacute;ries</option>
    <option value="4">Documentaires</option>
  </select></p>
';
 
echo '
    <label>
    <input type="submit" name="Submit" value="Envoyer" />
    </label></form><br />
	';
}
Ensuite le formulaire est envoyé à une autre page (parties.php) afin de récupérer les valeurs des formulaires et de les intégrer dans la base de données :

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
$demande = mysql_query("SELECT * FROM streaming");
$donnees = mysql_fetch_array($demande);
$id = $donnees['id'];
 
 
//Changement des variables
$i = 0;
$ii = 0;
$iii = 1;
$iiii = 1;
$nbpart = $_POST['nbpart'];
 
while ($ii < $nbpart)
{
$part.$iii = $_POST['name'.$iii];
$ii++;
$iii++;
}
Je récupère ici toutes les parties avec une boucle et à l'aide d'une autre boucle j'ajoute dans la base de données après avoir modifié l'id.



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
while ($i < $nbpart)
{
// modification de la derniere id
 
// On ouvre le fichier
$fp = fopen ("lastid.txt", "r+");  
// On prend les informations
$id = fgets ($fp, 11);  
// On ajoute 1 a L'id
$id = $id + 1;  
// On se place au debut du fichier
fseek ($fp, 0);  
// On rentre la nouvelle valeur
fputs ($fp, $id);  
// On ferme le fichier
fclose ($fp);
 
  $req = mysql_query("INSERT INTO streaming ( id, video, lecteur, cate) VALUES ( '$id', '$name.$iiii', '$lecteur', '$cate')") or die(mysql_error());
 
         $i++; 
		 $iiii++;
		 $id++;
}
 
echo 'Vos parties ont bien été ajoutées dans la bdd';
 
}
 
?>

-> Je ne comprends pas pourquoi ça ne marche pas, peut-être est-ce l'incrémentation des variables avec le .$iii

En tout cas je sais que quand j'ajoute des parties directement avec la base de données elles s'affichent sur ma page donc c'est un peu un handicap.
Si vous pouvez me donner des conseils sans pour autant m'aider ça serait vraiment très sympa d'autant plus que je débute en php donc je suis loin d'être ce qu'on appelle un pro
Merci d'avoir lu ce message !