Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour
Voici mon code :
// Transforme & Test le "POST"
if (empty($_POST['ville_nom'])) {
echo 'Veuillez taper un nom de ville';
}
else {
$villeNom = $_POST['ville_nom'];
// Connection Bdd
require('inc_connexion.php');
// Recherche ville
$result = $mysqli -> query('SELECT * FROM city WHERE city_name LIKE ("'.$villeNom.'")');
$row = $result -> fetch_array();
$cityID = $row['city_id'];
$saveName = $row['city_name'];
$saveDetail = $row['city_detail'];
// Enregistrement dans table "save"
$mysqli -> query('INSERT INTO save (save_name,save_detail,city_id) VALUES ("'.$saveName.'","'.$saveDetail.'","'.$cityID.'")');
//récupere le dernier ID enregistrer
$oldInsert = $mysqli->insert_id;
// Enregistrement dans tanle "liaison"
$mysqli -> query('INSERT INTO liaison (save_id) VALUES ("'.$oldInsert.'")');
// Jointure de "save & liaison"
$mysqli -> query('SELECT save.save_id from save INNER JOIN liaison where save.save_id = liaison.liaison_id');
//libère les resultats et ferme
$result -> free();
$mysqli -> close();
}
?>
</div>
<div id="cadre2">
<p><?php echo $cityID.' - '.$saveName ?><a href="index.php"> Détails :<?php $saveDetail ?></a></p>
</div>
Quand je click sur le lien il ne me reconnait pas les variables : $cityID et $saveDetail , je ne comprend pas ?
Hors ligne
Saluton,
Ton code est tout de même très “approximatif”, je note, entre autres choses, que tu ne testes pas si tes requêtes SELECT retourne vraiment un résultat avant d'en affecter le contenu à des variables.
Pourquoi SELECT * puisque tu sais que tu ne veux récupérer que trois colonnes : city.id, city_name et city_detail ?
Enfin ta description du dysfonctionnement est on ne peut plus absconse pour nous autres : “quand je clique sur le lien” … Quel lien ?
Enfin, l'éventuel résultat de la dernière requête de jointure de "save & liaison" n'est pas exploité.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Salut,
il n'y a ni formulaire pour passer les variables en POST, ni variables passées dans l'URL en GET...
donc, $villeNom = $_POST['ville_nom']; renverra... dans les méandres du web
Si le lien est <?php echo $cityID.' - '.$saveName ?><a href="index.php"> Détails :<?php $saveDetail ?></a>, là encore, aucune variable envoyée...
<?php echo $cityID.' - '.$saveName ?><a href="index.php?id=<?php echo"$cityID"; ?>"> Détails :<?php $saveDetail ?></a> et ensuite, on récupère $idCity = $_GET['id'];
SELECT * FROM city WHERE city_id=$idCity /* exemple */
mais POST est nettement préférable à GET (IMHO) et ensuite, il faut vérifier les vars qui sont passées *avant* de les utiliser pour des requêtes ! sinon, danger...
- Technical skill is mastery of complexity, while creativity is mastery of simplicity.
- Au fil des ans, je ne vieillis pas, je deviens vintage !
Hors ligne
Pages :: 1