[RESOLU]il n’affiche rien

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 : [RESOLU]il n’affiche rien

Re: il n’affiche rien

par Nathan-971 » 05 janv. 2012, 23:11

merci ça fonctionne :)

Re: il n’affiche rien

par mere-teresa » 05 janv. 2012, 15:53

Quelque que soit le champ que je mets j’ai un message d’erreur.

Code : Tout sélectionner

Parse error: syntax error, unexpected T_STRING in C:\wamp\www\bible\ma_page.php on line 35
Erreur ligne 35 du fichier C:\wamp\www\bible\ma_page.php
Regarde aussi ligne 34 et 36 si tu n'as pas oublié un ; par hasard...

Re: il n’affiche rien

par Shenryu » 05 janv. 2012, 10:42

C'est quoi ta ligne 35 de ton fichier ma_page.php

Re: il n’affiche rien

par Nathan-971 » 04 janv. 2012, 19:54

Quelque que soit le champ que je mets j’ai un message d’erreur.

Code : Tout sélectionner

Parse error: syntax error, unexpected T_STRING in C:\wamp\www\bible\ma_page.php on line 35
Je mets la structure des BDD si cela peut aider ce qu’on m’aide.
CREATE TABLE IF NOT EXISTS `versets` (
  `id` char(3) NOT NULL DEFAULT '',
  `ch` mediumint(3) NOT NULL DEFAULT '0',
  `vst` mediumint(3) NOT NULL DEFAULT '0',
  `LSG` text NOT NULL,
  `darby` text NOT NULL,
  `ostervald` text NOT NULL,
  `martin` text NOT NULL,
  `is_promesse` int(1) unsigned NOT NULL DEFAULT '0',
  KEY `id` (`id`,`ch`,`vst`),
  KEY `vst` (`vst`),
  KEY `ch` (`ch`),
  KEY `is_promesse` (`is_promesse`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `ref_bible` (
  `id` char(3) NOT NULL DEFAULT '',
  `livre` char(60) NOT NULL DEFAULT '',
  `chap` int(3) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

S'il vous plait, aidez-moi sur ce script, j’ai vraiment besoin de ce script

Re: il n’affiche rien

par Shenryu » 04 janv. 2012, 18:48

Si ton formulaire est envoyé, il faut que tu ajoutes la clause where sur l'id que tu reçois en POST.

Je ne sais pas sur quel champ il doit s'ajouter mais ta requête doit devenir :
SELECT livre, ch, vst, LSG, is_promesse, l.livre AS nom_livre, "v.versets" AS voir_versets
FROM ref_bible AS l
INNER JOIN versets AS v
ON l.id = v.id
WHERE v.is_promesse=\'1\'
AND MON_CHAMP_ID = $_POST['id']
ORDER BY is_promesse
N'oublie pas de protéger ton champ récupéré dans ta requête.

Re: il n’affiche rien

par Nathan-971 » 04 janv. 2012, 18:20

Quelqu’un a une idée ?

Re: il n’affiche rien

par Nathan-971 » 04 janv. 2012, 17:46

J’ai rajouté au formulaire
<select name="id">
    <option value="010">Choix 1</option>
<?php
if (isset($_POST['id'])) 
{
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=mbase', 'root', '', $pdo_options);

$reponse = $bdd->query('SELECT livre, ch, vst, LSG, is_promesse, l.livre AS nom_livre, "v.versets" AS voir_versets
                        FROM ref_bible AS l
						INNER JOIN versets AS v
						ON l.id = v.id
						WHERE v.is_promesse=\'1\'
						ORDER BY is_promesse' );

while ($donnees = $reponse->fetch())
{
echo $donnees['livre'] .''.$donnees['ch'] .' : '. $donnees['vst'] . '<br/>' . $donnees['LSG'] . ' <br/><br/>';
}

$reponse->closeCursor();
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
}
?>
Le script commence a fonctionné, mais il affiche directement tout ce qui ce trouve dans la BDD de donné sans s’occuper du formulaire.
Comment faire pour qu’il puisse tenir compte de ce dernier, et affiche un livre en fonction de ce que j’aurai sélectionné ?

Re: il n’affiche rien

par Mazarini » 04 janv. 2012, 17:00

Je n'ai pas trouvé de champs avec name=''id" dans ton formulaire.

Tu ne peux donc pas passer dans if (isset($_POST['id']))

Re: il n’affiche rien

par Nathan-971 » 04 janv. 2012, 16:52

J’ai refait le formulaire, bien que je ne sache pas trop s’il faut mettre le numéro de l’id ou le nom du livre. Est-il possible de me montrer comment en sélectionnant un livre on arrive à l’affiché avec la requête.
merci
Je galère à trouver la solution
<form action="ma_page.php" method="post">
<p>
    <select name="livre">
    <option value="010">Choix 1</option>
    <option value="02O">Choix 2</option>
    <option value="03O">Choix 3</option>
    <option value="04O">Choix 4</option>
</select>
    <input type="submit" value="Valider" />
</p>
</form>
			
<?php
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=m_base', 'root', '', $pdo_options);

$reponse = $bdd->query('SELECT livre, ch, vst, LSG, is_promesse, l.livre AS nom_livre, "v.versets" AS voir_versets
                        FROM ref_bible AS l
						INNER JOIN versets AS v
						ON l.id = v.id
						WHERE v.is_promesse=\'1\'
						ORDER BY is_promesse' );

while ($donnees = $reponse->fetch())
{
echo $donnees['livre'] .''.$donnees['ch'] .' : '. $donnees['vst'] . '<br/>' . $donnees['LSG'] . ' <br/><br/>';
}

$reponse->closeCursor();
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>

Re: il n’affiche rien

par xTG » 04 janv. 2012, 07:48

Tu mélanges dans tes values des chiffres avec des lettres 0 != O
De plus tu préfixes par un zéro ? Ton champ serait-il un varchar ?
Auquel cas l'opérateur < ne va pas fonctionner correctement...

[RESOLU]il n’affiche rien

par Nathan-971 » 04 janv. 2012, 03:40

Salut,
J’ai fait un code, je n’ai aucun message d’erreur, mais quand je valide, il n’affiche rien.
Je vous remercie d’avance pour votre aide.
  <form action="ma_page.php" method="post" name="value" id="page">
          <select name="value" id="value"> <option selected="selected" value="05">Tous les livres</option>
                                                       
                                                       <option  value="01O">Texte 1</option>
                                                        <option value="02O">Texte 2</option>
                                                        <option value="03O">Texte 3</option>
                                                        <option value="04O">Texte 4</option>
                                                        <option value="05O">Texte 5</option>


                        </select>
				<input name="Submit"   value=">>" type="submit" />
            
			
			        </form>
					
<?php

if (isset($_POST['id'])) 
{
$id = $_POST['id'];
try
{
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=mbase', 'root', '', $pdo_options);
    
    $req = $bdd->prepare('SELECT id, livre, ch, vst, LSG, is_promesse, l.livre AS nom_livre, "v.versets" AS voir_versets
                        FROM ref_bible AS l
						INNER JOIN versets AS v
						ON l.id = v.id
						WHERE v.is_promesse=\'1\' 
						AND id <= ?
						ORDER BY is_promesse' );
						
    $req->execute(array($_POST['id']));
    
    
    while ($donnees = $req->fetch())
    {
        echo $donnees['livre'] .' '.$donnees['ch'] .' : '. $donnees['vst'] . '<br/>' . $donnees['LSG'] . ' <br/><br/>';
    }
   
    
    $req->closeCursor();
}
catch(Exception $e)
{
    die('Erreur : '.$e->getMessage());
}
}
?>