Voici un petit pgm pour créer des sous catégories identiques dans chaque catégorie mère.
En fait si 50 catégories mères et 25 sous cat égale 1250 sous cat, pas cool pour un fainéant de la saisie comme moi ;)
Alors avec PHP et MS, j'ai fait quelque chose comme ça en très peut de temps. En fait sur mon annuaire Immobilier : http://immobilier.annuaire-liens-durs.fr , j'avais besoin de 24 sous catégorie une par région et j'ai écrit un petit programme avec deux boucles imbriquées et basta en quelques minutes mes catégories étaient crées. Rien d'extraordinaire pour les pro mais pour les débutants en php cela pourra peut être aider.
Voici ce petit programme sans prétention :
Code
<?php
$db_host = "***";
$db_name = "***";
$db_user = "***";
$db_pwd = "***";
$cnx = mysql_connect($db_host, $db_user, $db_pwd) or die(mysql_error());
mysql_select_db($db_name);
$val=array('Alsace','Aquitaine','Auvergne','Basse Normandie','Bourgogne','Bretagne','Centre','Champagne Ardennes','Corse','Dom-Tom','Franche Comte','Haute Normandie','Ile de France','Immobilier International','Languedoc Roussillon','Limousin','Lorraine','Midi Pyrenees','Nord Pas de Calais','PACA','Pays de la Loire','Picardie','Poitou Charentes','Rhone Alpes');
for($j=0; $j != 22; $j++)
{
for($i=0; $i != 24; $i++)
{
$k=$j+1;
$sql="insert into immo_category (name, root, usable)
values ('$val[$i]', $k, 1);";
$res=mysql_query($sql);
//echo $sql ."<br />";
}
}
mysql_free_result($res);
mysql_close($cnx);
?>
$db_host = "***";
$db_name = "***";
$db_user = "***";
$db_pwd = "***";
$cnx = mysql_connect($db_host, $db_user, $db_pwd) or die(mysql_error());
mysql_select_db($db_name);
$val=array('Alsace','Aquitaine','Auvergne','Basse Normandie','Bourgogne','Bretagne','Centre','Champagne Ardennes','Corse','Dom-Tom','Franche Comte','Haute Normandie','Ile de France','Immobilier International','Languedoc Roussillon','Limousin','Lorraine','Midi Pyrenees','Nord Pas de Calais','PACA','Pays de la Loire','Picardie','Poitou Charentes','Rhone Alpes');
for($j=0; $j != 22; $j++)
{
for($i=0; $i != 24; $i++)
{
$k=$j+1;
$sql="insert into immo_category (name, root, usable)
values ('$val[$i]', $k, 1);";
$res=mysql_query($sql);
//echo $sql ."<br />";
}
}
mysql_free_result($res);
mysql_close($cnx);
?>
Bien sur il faut charger l'array (le tableau) avec les valeurs des sous rubriques.
Enfin si vous avez des sous - sous - rubriques rajoutez un array de plus et une boucle pour le gérer et hop ! roulez jeunesse ! ;)
Gaffes aux array en PHP comme en SAS les indices démarre à 0 et non à 1.
Adaptez le pgm à la structure de vos tables, celui-ci à été crée pour du FreeGlobes.