Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1504 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Problème de variable avec Script de News

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Problème de variable avec Script de News

n°246055
tixi
Posté le 15-11-2002 à 16:30:15  profilanswer
 

Bonjour
 
Je débute en php et après avoir réussi mes pseudo-frames, je souhaite mettre en place Les News v2.2 .
Et j'ai un problème, qui est surement lié à ma version de PHP :4.2.3, je pense, variables globales sur off .
 
Le script pour la page d'administration:
 
 
<?php
require "news-conf.php3";
$lngfile="lang/fr.txt";
$lng = "_fr";
$phrases = get_translations($lngfile);
require ("haut.php3" );
if ($file == "addn" ) {
require ("addnews.php3" );
}
elseif ($file == "modn" ) {
require ("modnews.php3" );
}
elseif ($file == "deln" ) {
require ("delnews.php3" );
}
elseif ($file == "up" ) {
require ("upload.php3" );
}
else {
echo ("<center><font face=\"verdana\"><h3>".translate("Select an option" )."</h3></font></center>" );
}
 
require ("bas.php3" );
?>
 
Et les erreurs sur la page executée:
 
Notice: Undefined variable: files in E:\Intranet 2002\news\adminews\index_fr.php3 on line 7
 
Notice: Undefined variable: files in E:\Intranet 2002\news\adminews\index_fr.php3 on line 10
 
Notice: Undefined variable: files in E:\Intranet 2002\news\adminews\index_fr.php3 on line 13
 
Notice: Undefined variable: files in E:\Intranet 2002\news\adminews\index_fr.php3 on line 16
 
Donc une erreur à chaque ligne avec $file.
J'ai remis variable globals sur On dans php.ini, pareil :(
J'ai donc remis sur off
 
Et quand je rajoute çà au début du script :
 
$file = $_GET['file'];  
 
Les erreurs ci dessus disparaissent mais celle là apparait :
 
Undefined index: file in E:\Intranet 2002\news\adminews\index_fr.php3 on line 3
Pourtant j'ai accès à l'interface !
 
Mais cé pas fini  :cry:  
 
Je clic sur ajout d'une news :
 
Undefined variable: action in E:\Intranet 2002\news\adminews\addnews.php3 on line 8
 
Ligne 8 : switch($action)
 
Même erreur et même ligne pour modifier ou supprimer ...
 
Une autre juste pour modifier/supprimer :  
 
Undefined index: Date in E:\Intranet 2002\news\adminews\news-conf.php3 on line 106
 
Script : /* translate a string */
function translate($str,$vals="" ) {
 
  global $phrases;
 
  if ($phrases) {
   $p_str = $phrases[$str]; Ligne 106
        if ($p_str == "" ) {
          $p_str = $str;
        }
  } else {
    $p_str = $str;
  }
 
  if (gettype($vals)=="array" ) {
    $p_str = sprintf($p_str,$vals[0],$vals[1],$vals[2],$vals[3],$vals[4],$vals[5],$vals[6]);
  }
 
  return (trim($p_str));
 
 
J'espere que vous pourrez m'aider à comprendre ... sachant que je débute et que mon cerveau fume  :pt1cable:  :pt1cable:

mood
Publicité
Posté le 15-11-2002 à 16:30:15  profilanswer
 

n°246093
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 15-11-2002 à 16:55:08  profilanswer
 

Fouyaya, y a du boulot.
Alors euh bon, pour les erreurs du début "Undefined variable file", ba stu pouvais nous dire à quel moment tu initialises la variable, ça s'rait cool. Je suppose qu'elle se trouve dans un de tes require() m'enfin montre le code passke sans ça, on peut pas trop t'aider :)
Ensuite, pour les erreurs d'index, là c'est normal (enfin je crois). On va prendre l'exemple de ton dernier script. J'imagine que tu fais un translate("Date", "kekchose" ). Et à ta ligne 106, tu demandes la valeur du tableau $phrases correspondant à l'index Date. Perso, j'verrai plus un truc genre 1, 2 ou 148, vu que t'as un tableau. Ou alors, si tu fais une association du style "Date"->"15/11/2002" alors fais plutôt $phrases["Date"] (soit $phrases["$str"] dans ton code).
 
Enfin bref, t'as voulu faire concis pour pas prendre trop de place mais si j'étais toi, je donnerai toutes les infos pour UNE erreur. Comme ça, avec la correction d'une bin t'auras p'têt la correction de tout :p


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°247493
tixi
Posté le 18-11-2002 à 11:46:23  profilanswer
 

Bon, merci pour ta réponse , mais comme je maitrise rien du tout pour l'instant, j'ai pris un script de news très simple pour mieux comprendre.
Ne tiens pas compte du script ci-dessus, j'en ai choisi un autre. Et j'ai aussi des erreurs, et je sais pas pourquoi mais je crois que c'est du à ma version de php, ca le faisait pas avec l'ancien ...
 
Voici le script complet :
 
<?php
 
require ("dv_config.php" );
 
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="author" content="Suprem">
<meta name="keywords" content="">
<title></title>
<link rel="stylesheet" href="css/<?php echo $css; ?>" type="text/css">
</head>
 
<body bgcolor="#FFFFFF" text="#000000" background="" leftmargin="0" topmargin="0">
<br>
<table border="0" cellspacing="0" cellpadding="10" width="650">
  <tr>
    <td height="151">  
      <div align="left">
 
<?php
 
$db = mysql_connect("$dv_host", "$dv_login", "$dv_pass" );
mysql_select_db("$dv_base",$db);
 
if ($selection == "toutes" )
    $query = "SELECT * FROM DVnews ORDER BY id DESC";
 
else
    $query = "SELECT * FROM DVnews ORDER BY id DESC LIMIT 0,5";
 
$result = mysql_query($query);
 
while ($row = mysql_fetch_array($result)) {
 
    $date = $row[date];
    $annee = date("Y", $date);
    $mois = date("m", $date);
    $jour = date("d", $date);
    $heures = date("H", $date);
    $minutes = date("i", $date);
 
    $contenu = nl2br($row[contenu]);
     
    $date = "le ".$jour."/".$mois."/".$annee." à ".$heures."h".$minutes;
 
    echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"3\" width=\"450\" align=\"center\">\n";
    echo "<tr>\n";
    echo "<td>".$row[titre]."</td>\n";
    echo "</tr>\n";
    echo "<tr>\n";  
    echo "<td> \n";
    echo "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"10\">\n";
    echo "<tr> \n";
    echo "<td> \n";
    echo "<p>    ".$contenu."</p>\n";
    echo "</td>\n";
    echo "</tr>\n";
    echo "</table>\n";
    echo "</td>\n";
    echo "</tr>\n";
    echo "<tr>\n";
    echo "<td align=\"right\">".$date."</td>\n";
    echo "</tr>\n";
    echo "</table>\n";
    echo "<p> </p>\n";
 
}
 
/* fermeture de la connexion */
mysql_close($db);
?>

     </div>
    </td>
  </tr>
</table>
<table width="650" border="0" cellspacing="0" cellpadding="10">
  <tr>
    <td>
      <div align="center"><a href="dv_news.php?selection=toutes">Afficher toutes les news</a></div>
    </td>
  </tr>
</table>
<br>
<table width="650" border="0" cellspacing="0" cellpadding="10">
  <tr>
    <td>
 
    </td>
  </tr>
</table>
</body>
</html>
 
Lorsque je rentre dans l'interface d'admin et que je lance la page , il m'inscrit bien ma news dans la base Sql !  :)
 
Lorsque , ensuite, je lance le script ci-dessus dans ma page :  
 
Notice: Use of undefined constant date - assumed 'date' in E:\Intranet 2002\news\dv_news.php on line 37
 
Notice: Use of undefined constant contenu - assumed 'contenu' in E:\Intranet 2002\news\dv_news.php on line 44
 
Notice: Use of undefined constant titre - assumed 'titre' in E:\Intranet 2002\news\dv_news.php on line 50
 Ceci est un test  
    TEST DE LA PREMIERE NEWS
 
 
le 18/11/2002 à 11h09  
 
 
 
Afficher toutes les news  

 
C'est un problème de variable je sais mais j'y comprends encore pas grand chose, je débute  :whistle:  
 
Ligne 37 :  $date = $row[date];
Ligne 44 :  $contenu = nl2br($row[contenu]);
Ligne 50 :  echo "<td>".$row[titre]."</td>\n";
 
Ce que je comprends encore moins, c'est qu'il m'affiche bien ma news pourtant ....

n°247495
Fred999
Rabat-joie
Posté le 18-11-2002 à 11:50:05  profilanswer
 

tixi a écrit a écrit :

 
Ligne 37 :  $date = $row["date"];
Ligne 44 :  $contenu = nl2br($row["contenu"]);
Ligne 50 :  echo "<td>".$row["titre"]."</td>\n";
 




 
Ca devrait aller mieux ;)


Message édité par Fred999 le 18-11-2002 à 11:50:16
n°247505
tixi
Posté le 18-11-2002 à 11:57:12  profilanswer
 

Merci Fred, j'ai honte de moi maintenant  :ange:  :ange:  :ange:

n°247581
Fred999
Rabat-joie
Posté le 18-11-2002 à 13:13:17  profilanswer
 

Faut le savoir! :)
 
Tu ne la feras plus :)


Message édité par Fred999 le 18-11-2002 à 13:13:22

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Problème de variable avec Script de News

 

Sujets relatifs
tableaux PHP et javascript[SOAP] Un ch'tit problème avec SOAP::Lite
[HTML, JS] Portée d'une variable[Shell Script] Rapatrier automatiquement un fichier via FTP
Accès à Access avec PHP[PHP] Sondage prérempli
[PHP] phpbb - ajouter une option dans mon portail[PHP] setcookie : pb d'expiration
[PHP] $HTTP_SERVER_VARS, récupération du nom de domaine ? (hostname)Petit probleme dans mon script de news :(
Plus de sujets relatifs à : [PHP] Problème de variable avec Script de News


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR