Envoyer un id d'une page à l'autre en php via du html

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Envoyer un id d'une page à l'autre en php via du html

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 21:30

Merci pour votre retour, j'ai bien une page de détails pour mes séries, une pour mes saisons, et une pour mes épisodes, mais effectivement je n'ai qu'une seule page qui modifie ou ajoute une série, une seule pour modifier et ajouter une saison, et une pour m et a les épisodes (6 pages en tout).
J'ai suivi la démarche du prof (de façon scolaire) et n'ai pas pensé aux possibles problèmes que cela entrainerai (par manque de connaissances) mais je prend vos retours, j'y penserais pour la prochaine fois, merci beaucoup !

Re: Envoyer un id d'une page à l'autre en php via du html

par or 1 » 09 janv. 2021, 21:21

il faudrait faire les choses proprement, ne pas tous mettre dans un fichier quand il faudrait 2 fichiers.
il faut un script php qui affiche toutes les séries, un script qui affiche le détail d'une série, un script php qui affiche le détail d'une saison, un script php qui affiche le détail d'un épisode, le tout avec des noms de fichiers parlants.
cela évitera de mettre un lien ajouter après un if else, qui n'a pas de sens pour une page qui a trop d'usages.

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 21:12

Oh merci pour l'info !! je ne connaissais pas le ctr+u !!

Cela m'affiche ça :
<a href ="fichesaison.php?idserie=5&idsaison=<br />
<b>Notice</b>: Undefined index: idsaison in <b>C:\MAMP\htdocs\myNetflix\saison.php</b> on line <b>92</b><br />
"> Ajouter </a>

Donc si je commence à comprendre c'est le idsaison qu'il ne trouve pas et il faut que je reprécise un idsaison c'est ça ?
Par contre ? (question surement conne) mais je lui donne comment ? En faisant comme dans le while ? idsaison='.id.' juste id ?

Re: Envoyer un id d'une page à l'autre en php via du html

par or 1 » 09 janv. 2021, 21:05

quel est le résultat de ce code ?
<a href ="fichesaison.php?idserie=<?php echo $_GET['idserie'];?>&idsaison=<?php echo $_GET['idsaison'];?>"> Ajouter </a>
ctrl + u pour voir la source d'une page html et donc le résultat du php.

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 21:01

Je suis sur ma page Saison
http://localhost/myNetflix/saison.php?idserie=5

L'url de ma page saison quand je clique sur modifier :)
http://localhost/myNetflix/fichesaison. ... idsaison=7

Je n'ai pas d'url de ma page saison quand je veux ajouter puisque le bouton ne fonctionne pas (d'où le fait que je pense que j'écris mal ma demande) !
<a href ="fichesaison.php?idserie=<?php echo $_GET['idserie'];?>&idsaison=<?php echo $_GET['idsaison'];?>"> Ajouter </a>

si je fais un lien simple (sans php) j'ai :
http://localhost/myNetflix/fichesaison.php

Est-ce que j'ai bien répondu à tout ?

Re: Envoyer un id d'une page à l'autre en php via du html

par or 1 » 09 janv. 2021, 20:46

quelle est l'url de la page saison.php quand cela fonctionne ? quand cela ne fonctionne pas ?
quelle est l'url de la page qui fait un lien vers saison.php qui ne fonctionne pas ? quel est le code html du lien de cette page, généré par php ?

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 20:05

Si toujours malheureusement ! J'ai essayé de bidouiller mais mais niveau n'est vraiment pas assez bon ! Tant pis je serais notée en conséquence ^^ mais merci quand même !

Re: Envoyer un id d'une page à l'autre en php via du html

par or 1 » 09 janv. 2021, 16:12

s'il n'y a plus :
"Notice: Undefined variable: idsaison in C:\MAMP\htdocs\myNetflix\episode.php on line 45"
c'est que quelque chose à changer.

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 16:04

ça ne change absolument rien. Je pense que j'ai une erreur dans la façon dont j'ai écrit la phrase peut etre ...

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 16:01

Effectivement pardon ! c'est bien $_GET['idsaison']. Je me suis trompée, désolée c'est encore un langage difficile au début.

Re: Envoyer un id d'une page à l'autre en php via du html

par or 1 » 09 janv. 2021, 15:12

relisez mon message, caractère par caractère.

Re: Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 15:09

En fait j'envoie ma donnée par le lien "Modifier" en php sur ma page saison vers ma page épisode avec :
<a href ="ficheserie.php?idserie='.$SQLRow->id.'" title="Modifier la série">Modifier</a></td>';
et je parviens à récupérer dans la page épisode la donnée.

Mais quand j'essaye de la renvoyer par un bouton "Ajouter" dans du html je n'arrive pas à écrire la phrase pour la renvoyer. J'ai essayé ça mais sans succès.
<a href ="saison.php?idserie=<?php echo $GET_['idserie'];?>&idsaison=<?php echo $GET_['idsaison']";?>> Ajouter </a>

Voici mon code, c'est peut être plus explicite :
<!DOCTYPE html>
<?php
    include_once('includes/scripts/connection.php');
?>
<html lang='fr'>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
    <title>La liste des mes saisons</title>
</head>
<body>
    <section id='wrapper'>
        <nav>
            <ul>
                <li><a href="index.php" title="Page d accueil">Accueil</a></li>
                <li><a href="ficheserie.php" title="Fiche serie">Nouvelle série</a></li>
            </ul>
        </nav>
        <header><h2> Saisons <h2></header>
        <section>
        <table style="border : solid 1px black; border-collapse: collapse">
                <tr>
                    <th style="width:50px; border:solid 1px black">Numéro</th>
                    <th style="width:100px; border:solid 1px black">Titre</th>
                    <th style="width:200px; border:solid 1px black">Résumé</th><!---->
                    <th style="width:100px; border:solid 1px black">Année de parution</th>
                    <th style="width:50px; border:solid 1px black">Déjà vu ?</th>
                    <th style="width:100px; border:solid 1px black">Épisodes</th>
                    <th style="width:300px; border:solid 1px black" colspan="2">Actions</th>
                </tr>

            <?php
            if (empty($_GET)){
                $idserie=$_GET['idserie'];
                $SQLQuery = 'SELECT id, numero, titre, resumer, anneeparution, dejavu FROM saison ORDER BY numero';
                $SQLResult = $dbConn->query($SQLQuery);
                $script = '';
                while($SQLRow = $SQLResult->fetchObject()){
                    $script = $script.'<tr>';
                    $script = $script.'<td style="border:solid 1px black">'.$SQLRow->numero.'</td>';
                    $script = $script.'<td style="border:solid 1px black">'.$SQLRow->titre.'</td>';
                    $script = $script.'<td style="border:solid 1px black">'.$SQLRow->resumer.'</td>';
                    $script = $script.'<td style="border:solid 1px black">'.$SQLRow->anneeparution.'</td>';
                    $script = $script.'<td style="border:solid 1px black">'.$SQLRow->dejavu.'</td>';
                    $script = $script.'<td style="border:solid 1px black; text-align:center">
                    <a href ="episode.php?idsaison='.$SQLRow->id.'" title="Voir les épisodes">Épisodes</a></td>';
                    $script = $script.'<td style="border:solid 1px black; text-align:center">
                    <a href ="fichesaison.php?idsaison='.$SQLRow->id.'" title="Modifier la saison">Modifier</a></td>';
                    $script = $script.'<td style="border:solid 1px black; text-align:center">
                    <a href ="supprsaison.php?idsaison='.$SQLRow->id.'" title="Supprimer la série">Supprimer</a></td>';
                        $script = $script.'</tr>';  
                    }
                print($script);
                $SQLResult->closeCursor();
            }else{
                $idserie=$_GET['idserie']; //je recupere l'id de la serie pour n'avoir que les saisons de cette serie
                $SQLQuery = 'SELECT id, numero, titre, resumer, anneeparution, dejavu FROM saison WHERE idserie='.$idserie.' ORDER BY numero';  //je recupere les infos de la bdd
                //print("Episodes dont l'id vaut $id");
                $SQLResult = $dbConn->query($SQLQuery);
                $script = '';
                while($SQLRow = $SQLResult->fetchObject()){
                    $script = $script.'<tr>';
                        $script = $script.'<td style="border:solid 1px black">'.$SQLRow->numero.'</td>';
                        $script = $script.'<td style="border:solid 1px black">'.$SQLRow->titre.'</td>';
                        $script = $script.'<td style="border:solid 1px black">'.$SQLRow->resumer.'</td>';
                        $script = $script.'<td style="border:solid 1px black">'.$SQLRow->anneeparution.'</td>';
                        $script = $script.'<td style="border:solid 1px black">'.$SQLRow->dejavu.'</td>';
                        $script = $script.'<td style="border:solid 1px black; text-align:center">
                        <a href ="episode.php?idserie='.$idserie.'&idsaison='.$SQLRow->id.'" title="Voir les épisodes">Épisodes</a></td>';
                        $script = $script.'<td style="border:solid 1px black; text-align:center">
                        <a href ="fichesaison.php?idserie='.$idserie.'&idsaison='.$SQLRow->id.'" title="Modifier la saison">Modifier</a></td>';
                        $script = $script.'<td style="border:solid 1px black; text-align:center">
                        <a href ="suppr_saison.php?idsaison='.$SQLRow->id.'" title="Supprimer la série">Supprimer</a></td>';
                        //$message='Voulez-vous vraiment supprimer ?';
                        //echo '<script type="text/javascript">window.alert("'.$message.'");</script>';
                    $script = $script.'</tr>';    
                }
                print($script);
                $SQLResult->closeCursor();
            }
            ?>
            </table>
            <div>
            <!--<table style="border : solid 1px black; border-collapse: collapse">
                <tr>
                    <th style="width:300px; border:solid 0px" colspan="2"></th>
                </tr>
            </table>-->

                <a href ="index.php">Retour</a>
                <a href ="saison.php?idserie=<?php echo $GET_['idserie'];?>&idsaison=<?php echo $GET_['idsaison'];?>"> Ajouter </a>
            </div>
        </section>
    </section>
</body>
</html>
Quand je clique sur mon bouton "modifier" j'ai bien mon id serie et id saison qui s'affiche dans mon url mais pas lorsque je clique sur mon bouton "ajouter" à la fin de ma page !

Re: Envoyer un id d'une page à l'autre en php via du html

par or 1 » 09 janv. 2021, 14:35

"Et je fais un $idserie=$_GET['idserie'];"
cela marche, vous nous dites.

"<?php echo $GET_['idserie'];?>"
cela ne marche pas, vous nous dites.

Envoyer un id d'une page à l'autre en php via du html

par Axelle » 09 janv. 2021, 11:04

Bonjour,
Je vous poste ce dernier message désespérément. J'ai commencé les cours de php cette année, j'ai eu 16h ou on a appris à découper, coller des phrases et on nous demande gentiment de créer un projet ou on doit lier une base de données phpmyadmin dans du php.

L'idée est que nous devons faire un 'Netflix' : nous avons une page avec nos séries, lorsqu'on clique sur les épisodes d'une série on arrive sur ses saisons, et lorsqu'on clique sur les épisodes de la saison X on arrive sur ses épisodes.
J'ai réussi (partiellement) à faire ça mais j'ai un gros soucis que je n'arrive pas à résoudre malgré mes nombreuses heures à chercher. Et malheureusement je ne comprend pas plusieurs forum sur internet.

J'envoie de ma page série à ma page saison un id série avec un :

Code : Tout sélectionner

$script = $script.'<td style="border:solid 1px black; text-align:center"><a href ="saison.php?idserie='.$SQLRow->id.'" title="Voir les saisons">Saisons</a></td>';
qu'on nous a fait mettre après un while :
<?php
 $SQLQuery = 'SELECT id, titre, anneediffusion FROM serie ORDER BY titre';
 $SQLResult = $dbConn->query($SQLQuery);
$script = '';
while($SQLRow = $SQLResult->fetchObject()){
$script = $script.'<tr>';
$script = $script.'<td style="border:solid 1px black">'.$SQLRow->titre.'</td>';
$script = $script.'<td style="border:solid 1px black; text-align:center">'.$SQLRow->anneediffusion.'</td>';
 $script = $script.'<td style="border:solid 1px black; text-align:center"><a href ="saison.php?idserie='.$SQLRow->id.'" title="Voir les saisons">Saisons</a></td>';
 $script = $script.'<td style="border:solid 1px black; text-align:center"><a href ="ficheserie.php?idserie='.$SQLRow->id.'" title="Modifier la série">Modifier</a></td>';
$script = $script.'<td style="border:solid 1px black; text-align:center"> <a href ="suppr_serie.php?idserie='.$SQLRow->id.'" title="Supprimer la série">Supprimer</a></td>';
 $script = $script.'</tr>';
}
print($script);
$SQLResult->closeCursor();
 ?>
Sur ma page saison j'ai essayé de faire ça (pour envoyer sur la page épisodes et ça fonctionne :
$script = $script.'<td style="border:solid 1px black; text-align:center"><a href ="episode.php?idserie='.$idserie.'&idsaison='.$SQLRow->id.'" title="Voir les épisodes">Épisodes</a></td>';
Et je fais un $idserie=$_GET['idserie']; dans chaque page pour récupérer les données + $idsaison=$_GET['idsaison]; dans ma page épisodes.

Dans ce sens pas de soucis, mais j'ai ajouté un bouton "retour" pour pouvoir revenir dans la page saison de la page épisodes par exemple et la je ne parviens pas à renvoyer les données.
J'ai tenté avec ça :

Code : Tout sélectionner

<a href ="saison.php?idserie=<?php echo $GET_['idserie'];?>&idsaison=<?php echo $GET_['idsaison'];?>" Ajouter </a>
Mais ça ne fonctionne pas.
"Notice: Undefined variable: idsaison in C:\MAMP\htdocs\myNetflix\episode.php on line 45" et plus idsaison dans mon url.
Je ne sais vraiment pas quoi faire... Je sais que c'est surement compliqué de comprendre mon code (parceque je l'ai fait comme quelqu'un qui ne sait pas coder), mais si vous avez une idée...

Pour info :
episode.php : page des épisodes
ficheepisode.php : modification et ajout des épisodes