Page 1 sur 2
1 seul code au lieu de $c
Posté : 01 déc. 2010, 16:24
par HTML BOY
Bonjour, mon problème est petit mais très énervant ...
En fait j'essaye de puis 2 jours de créer une page me permettant de générer un certain nombres de codes, et les entrer dans mysql !
Mais cela ne m'entre dans tout les cas qu'un seul code
<?php
session_start();
mysql_connect("X", "XXX", "XXXXXXXX");
mysql_select_db("XXX_db");
if(isset($_POST['c']))
{
$c=$_POST['c'];
$n='0';
while($n<$c)
{
$gen=rand(1000, 9999);
mysql_query('insert into code(code) values ("'.$gen.'")');
echo "Tout c'est bien passé !!!";
$n++;
exit();
}
}
?>
Le nombre de code à générer :<form action="" method="post"><input type="text" name="c" value="" /><BR><input type="submit" value="Générer"></form>
Merci pour vos futurs et nombreuse réponse ^^

Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 16:26
par Berzemus
C'est marrant comme des chaînes de caractères son censés être des nombres..

Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 16:37
par stealth35
C'est marrant comme des chaînes de caractères son censés être des nombres..

c'est caster en integer de tout façon après
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 16:39
par HTML BOY
Désolé,

mais j'ai pas compris ce que tu voulais me faire comprendre

Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 16:42
par stealth35
le problème viens de ton exit()
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 16:55
par moogli
perso je ferais ça pour pas faire 20000 requete
<?php
session_start();
mysql_connect("X", "XXX", "XXXXXXXX");
mysql_select_db("XXX_db");
if(isset($_POST['c'])){
$c=$_POST['c'];
$n='0';
$query = 'insert into code(code) values '
while($n<$c)
{
$gen=rand(1000, 9999);
$query .= '(\''.$gen.'\') ';
$n++;
}
mysql_query($query);
}
?>
Le nombre de code à générer :<form action="" method="post"><input type="text" name="c" value="" /><BR><input type="submit" value="Générer"></form>
@+
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 17:04
par HTML BOY
Merci beaucoup

Voici mon code final, qui marche bien ^^
<?php
session_start();
mysql_connect("sql.free.fr", "security.mondo", "wxcvbn12");
mysql_select_db("security_mondo_db");
if(isset($_POST['c']))
{
$c=$_POST['c'];
$n='0';
echo "Tout c'est bien passé !!!<BR><BR>";
while($n<$c)
{
$gen=rand(1000, 9999);
mysql_query('insert into code(code) values ("'.$gen.'")');
$n++;
}
}
?>
Le nombre de code à générer :<form action="" method="post"><input type="text" name="c" value="" /><BR><input type="submit" value="Générer"></form>
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 17:06
par binboum
Salut,
session_start() serre à rien.
Ensuite moogli ta proposer une meilleur solution.
Cordialement.
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 17:18
par stealth35
et pas besoin de PHP pour faire le rand SQL peu s'en occuper
INSERT INTO `code` (`code`) VALUES (TRUNCATE((RAND() * 8999) + 1000, 0))
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 17:29
par HTML BOY
OK, c'est bon, j'ai tout fait

et tout marche =D>
Mais le nombre de requête et tout ça, je m'en fiche, t'en qu'ça marche ^^
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 17:38
par binboum
OK, c'est bon, j'ai tout fait

et tout marche =D>
Mais le nombre de requête et tout ça, je m'en fiche, t'en qu'ça marche ^^
Oui et bien quand tu seras sur un serveur dédier, tu voudras justement éviter d'en avoir.
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 19:41
par moogli
bof au pire l'hébergeur te casse les genoux si tes scripts sont trop copieux XD
la solution de stealth35 me plait bien ça fait fonctionner un peu le serveru mysql
@+
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 20:10
par devlop78
C'est marrant comme des chaînes de caractères son censés être des nombres..

Moi je soutiens cette remarque ... Là, pas de problème, mais demain, il va chercher pendant des heures un problème dû à ça, surtout dans d'autres langages suffisamment traitres pour ne fonctionner qu'à moitié et laisser un débogage fastidieux (les dérivés d'ECMA pour ne pas en citer ...).
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 22:43
par stealth35
C'est marrant comme des chaînes de caractères son censés être des nombres..

Moi je soutiens cette remarque ... Là, pas de problème, mais demain, il va chercher pendant des heures un problème dû à ça, surtout dans d'autres langages suffisamment traitres pour ne fonctionner qu'à moitié et laisser un débogage fastidieux (les dérivés d'ECMA pour ne pas en citer ...).
c'est pareil...
var c = '8';
var n = '0';
while(n < c) {
document.write(n + '\n');
n++;
}
ca marche très bien
Re: 1 seul code au lieu de $c
Posté : 01 déc. 2010, 23:06
par Berzemus
ca marche très bien
Oh oui, mais c'est pas parce qu'on
peut mal faire qu'on
doit mal faire. Juste savoir qu'on le fait mal est déjà suffisant.
Enfin, juste comme ça, Php permet plein de choses horribles, il n'en reste pas moins un langage épatant.