mon code PHP effectue les transfert, mais n'affiche pas les resultats

WRInaute discret
Hello a tous,

J'ai un etrange pobleme:
Je fais rouller ce petit code:

Code:
$resource2 = mysql_connect(localhost, xxxxxxxxx, xxxxxxxx);
$db = mysql_select_db(kvd, $resource2)
or die ("Couldn't select database2.");
$db;
set_time_limit(500);

echo "Debut du Update...";

$queryz  = "SELECT * FROM kvd.products";
$resultz = mysql_query($queryz);
while($row = mysql_fetch_array($resultz)){

$products_id   = $row['products_id'];
$products_model   = $row['products_model'];

mysql_query("UPDATE kvd.pourtransfert SET productidosc ='$products_id' WHERE itemnum = '$products_model'");

}
echo "on efface les non utiliser...";
mysql_query("DELETE FROM kvd.pourtransfert WHERE productidosc = ''");

echo "<br>Update Termine";

Mais voila je fais rouler ce code dans mon fureteur internet et celi ci me dit que la page est en train de loader... et je peus attendre pendant 20 minutes et rien n'apparait des "echo", mais si je vais dans ma base de donner les changement sont fait et les ligne n'ayant rien dans productidosc sont effacées .

Si ca peu aider kvd.products contient 2500 ligne et kvd.pourtransfert contient 40000 lignes au debut.

Avez vous une idee du probleme?

Merci d'avance.
 
WRInaute accro
Il manque un dollar ou des guillemets (si c'est la BDD kvd):
Code:
$db = mysql_select_db(kvd, $resource2)

Qu'est ce que cette ligne qui ne fait rien?
Code:
$db;

Dans UPDATE et DELETE, c'est la table qu'il faut donner, pas le champ ni la BDD:

Code:
mysql_query("UPDATE kvd SET productidosc ='$products_id' WHERE itemnum = '$products_model'");
http://dev.mysql.com/doc/refman/5.0/fr/update.html

Code:
mysql_query("DELETE FROM kvd WHERE productidosc = ''");
http://dev.mysql.com/doc/refman/5.0/fr/delete.html

(J'ai pas trop compris quel est le nom de ta table... ici j'ai supposé que c'était "kvd")
 
WRInaute passionné
comme tu sélectionnes la base kvd c'est pas la peine de mettre "kvd.pourtransfert" : tu peux juste mettre le nom de la table "pourtransfert"
 
WRInaute discret
spout a dit:
Il manque un dollar ou des guillemets (si c'est la BDD kvd):
Code:
$db = mysql_select_db(kvd, $resource2)

Qu'est ce que cette ligne qui ne fait rien?
Code:
$db;

Dans UPDATE et DELETE, c'est la table qu'il faut donner, pas le champ ni la BDD:

Code:
mysql_query("UPDATE kvd SET productidosc ='$products_id' WHERE itemnum = '$products_model'");
http://dev.mysql.com/doc/refman/5.0/fr/update.html

Code:
mysql_query("DELETE FROM kvd WHERE productidosc = ''");
http://dev.mysql.com/doc/refman/5.0/fr/delete.html

(J'ai pas trop compris quel est le nom de ta table... ici j'ai supposé que c'était "kvd")

Non en effet kvd est le nom de la base de donne et "pourtransfert" et "products" son les noms de mes tables.

Mes transfert se font dans la base de donnee...donc la connection se fait. Il termine meme la boucle et effectue l'etape d'effacer et ce en dedand de 6 minutes. Mais ma page reste en "loading" et fini apres 20 a 25 minutes a me marquer "stopped" dans la barre d'etat.

Alors je me demandais s'il y avait une raison ou une facon d'ameliorer mon code?
 
Discussions similaires
Haut