Problème mysql selection ambigue
Bonjour,
Je suis débutant en programmation. J'ai un site web ayant des problèmes de double contenant.
J'ai un gros problème. J'ai 15 fournisseurs par exemple. Le problème consiste la pagination du site. J 'ai fournisseur-1.html
fournisseur-2.html fournisseur-3.html fournisseur-4.html etc...
Lorsque je veux accéder au fournisseur fournisseur-2.html ou fournisseur-3.html l'adresse dans le navigateur est: fournisseur-1_2a.html plus la pagination exemle: 1-3a, 1_4a etc...Lorsque je veux accéder au fournisseur fournisseur-4.html l'adresse dans le navigateur est fournisseur-1_4d.html et la pagination est 1_4d, 1_5d, 1_6d etc...
Ensuite j’ai le même problème pour les catégories puissances.
J'ai trouvé une erreur dans mon adresse web.
Voici le code:
Code:
1 2 3 4
| if(isset($_GET['f1id'])) { $criter = "fournisseur='".intval($_GET['f1id'])."'"; $table = "fournisseur";}
elseif(isset($_GET['f2id'])) {$criter = "cert LIKE '%,".intval($_GET['f2id']).",%'"; $table = "produit_puissance";}
else{} |
ici, il sélectionne la base de donnée des produits. Mais le tableau concernant les fournisseur et les puissances, ne sont pas sélectionné.
Code:
$nr_rows = $db->num_rows("select * from produit where $criter and activ=1 order by id desc");
Ici il fait la pagination. Il fait le choix de la catégorie avec cela: 'fournisseur':'produit_puissance' et met par défaut facom.
Code:
1 2 3 4 5
| if($c_var_ps>1) {
$t->set_var('PAGE',pagination(@$_GET['p'],$c_var_ps,((isset($_GET['f1id']))?'fournisseur':'produit_puissance').'/facom_'.((isset($_GET['f1id']))?intval($_GET['f1id']):intval($_GET['f2id'])).'-p_%page%.html'));
} else {
$t->set_var('PAGINATION','');
} |
Donc, il faut sélectionner toutes les bases de données concernées. '.ident($subcat['nume']).'
Exemple
Code:
1 2
| $nr_fournisseur = $db->num_rows("select * from fournisseur where $criter and activ=1 order by id desc");
$nr_puissance = $db->num_rows("select * from outil where $criter and activ=1 order by id desc"); |
Et l'introduire dans l'URL.
Code:
'.iden($nr_fournisseur['nom']).':'.iden($nr_puissance['nom']).'
J'ai essayé en faisant cela mais ça n'a pas fonctionné. Pourriez vous me dire comment, je pourrais intégrer les deux nouvelles nom, dans l'url ?
Le problème c'est que dois sélectionner deux table dans la base de donné et mettre une condition d'égalité
Table produit
Id title fournisseur desc …… actif
Table fournisseur
Id nom description actif
La condition c'est que l'id de la table fournisseur doit être éga,l à la colonne fournisseur et si c'est égal alors, il doit récupérer le nom du fournisseur. Mais il doit sélecter la totalité de la base produit et seulement une information nom de l'autre table.
Voici maintenant comment on la sélectionne:
Code:
select * from produit where $criter and activ=1 order by id desc