IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

intégration de isset pour un débutant


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut intégration de isset pour un débutant
    Bonjour, suite au transfert de mon vieux site vers un nouveau serveur, j'aimerai corriger les "php notice" des error_log. Au début il me disait d ajouter des guillemets dans mes variables pour changer par exemple les $_GET[s] en $_GET['s'].

    Maintenant il m'indique que les variables ne sont pas initialisées en affichant "php notice: Undefined index: s in... "

    Donc je découvre pour la première fois l'utilisation des isset. J'ai compris leur utilisation mais je suis pas assez calé encore pour les intégrer à mes pages en les rédigeant proprement pour chaque ligne de variables, d'autant qu'il y a souvent 2 variables non initialisées. Ce sont des vieux codes manipulés précédemment de différents programmeur. Maintenant je suis seul à m'occuper de mon site donc soyez indulgent, j'apprends en même temps que je refais mon site. Quelqu'un aurait il la gentillesse de m'aider à rédiger ça ?

    La page index.php dont les variables ne sont pas initialisées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    <? 
    require ("news_config.inc.php"); 
     
    $niveau=1;
    require ("../" . INCLUDEDIR . "/protection.inc.php");
    require ("../" . INCLUDEDIR . "/format.inc.php");
    require ("../" . INCLUDEDIR . "/date.inc.php");
     
    ?>
    <html>
    <head>
    <title><? echo $lang[0]; ?></title>
    </head>
    <body onContextMenu="return false">
    <form name="form" method="post" action="">
    <link href="../style.css" rel="stylesheet" type="text/css">
    <link href="../style_inputtext.css" rel="stylesheet" type="text/css">
    <script language="JavaScript" src="../fonctions.js"></script>
    <script language="JavaScript" src="fonctions.js"></script>
    <script language="JavaScript">
    <!--
    if (top.location.href == self.location.href) window.location.href = 'frames.php';
    //-->
    </script>
     
    <h3 align=center><? echo $lang[0]; ?></h3>
     
    <p align=center class=10><a href="news_form.php?act=0" OnClick="news_form=open_news_form('');" target="news_form"><? echo $lang[11]; ?></a> - <a href="index_inscrits.php"><? echo $lang[18]; ?></a></p>
     
    <?
    if ($_GET['act']==2 && isset($_GET[nid]))
    {
    	$sql="DELETE FROM $tables[news] WHERE new_id='$_GET[nid]'";
    	$result=mysql_query($sql);
    	$sql="DELETE FROM $tables[news_photos] WHERE new_id='$_GET[nid]'";
    	$result=mysql_query($sql);
    }
     
    if (isset($_GET['s']) && $_GET['s']==0) { $sens="DESC"; $s=1; }
    else { $sens="ASC"; $s=0; }
     
    include("../includes/navigation_mois.inc.php");
    ?>
    <table border="0" align="center" cellpadding="0" cellspacing="0" class=TABLEBORDER width="70%">
    <tr>
    <td><? // bordure ?><table width="100%" border=0 cellspacing=1 cellpadding=3 align=center>
    <tr>
    <th width=100%><a href="?a=<? echo $_GET['a']; ?>&m=<? echo $m; ?>&o=0&s=<? echo $_GET['s']; ?>"><? echo $lang[13]; ?></a></th>
    <th><a href="?a=<? echo $_GET['a']; ?>&m=<? echo $m; ?>&o=1&s=<? echo $_GET['s']; ?>"><? echo $lang[16]; ?></a></th>
    <th><a href="?a=<? echo $_GET['a']; ?>&m=<? echo $m; ?>&o=2&s=<? echo $_GET['s']; ?>"><? echo $lang[14]; ?></a></th>
    <th width=15><img src="../images/editer.gif" alt="<? echo $bt_lang[1] ?>"></th>
    <th width=15><img src="../images/supprimer.gif" alt="<? echo $bt_lang[2] ?>"></th></tr>
    </tr>
    <?
    $order[]="titre";
    $order[]="nick";
    $order[]="date";
     
    if ($order[$_GET['o']]=="") $o=2;
    else $o=$_GET['o'];
     
    $sql="SELECT t1.*, nick FROM $tables[news] as t1, $tables[users] as t2 
    	WHERE t1.user_id=t2.user_id
    	AND year(date)=".$a."
    	AND month(date)=".$m."
    	ORDER BY " . $order[$o] . " $sens";
    $result=mysql_query($sql); 
     
    for ($i=0;$result && $row=mysql_fetch_array($result);$i++) 
    {	
    	$date=mysql2date($row['date']);
    /* 	if ($row[texte]!="") $texte="<img src=\"". WWWROOT .  "/" . IMAGESDIR ."/notes.gif\" alt=\"".addslashes(remove_tags($row[texte]))."\" align=absmiddle>";
    	else $texte="";
    */
     
    	if ($i & 1) $style=1; else $style=2;
     
    	echo "<tr class=TABLEDATA$style onmouseover=\"this.className='TABLEDATAO'\"
        onmouseout=\"this.className='TABLEDATA$style'\">
    	<td nowrap>".remove_tags($row['titre'])."&nbsp;$texte</td>
    	<td>$row[nick]</td>
    	<td align=center nowrap>$date - $row[heure]</td>
    	<td align=center>
    	<a href=\"news_form.php?act=1&nid=$row[new_id]\" OnClick=\"news_form=open_news_form('');\" target=\"news_form\">
    	<img src=\"../images/editer.gif\" border=0 alt=\"$bt_lang[1]\">
    	</a>
    	</td>
    	<td align=center>";
     
    	echo "<a href=\"?act=2&nid=$row[new_id]\" OnClick=\"if (confirm('$msg_lang[3]')) return true; else return false;\">";
    	echo "<img src=\"../images/supprimer.gif\" border=0 alt=\"$bt_lang[2]\">";
    	echo "</a>";
    	echo "</td></tr>\n";
    }
     
    ?>
    </table><? // bordure ?></td>
    </tr>
    </table>
     
    <p align=center class=10><a href="news_form.php?act=0" OnClick="news_form=open_news_form('');" target="news_form"><? echo $lang[11]; ?></a> - <a href="index_inscrits.php"><? echo $lang[18]; ?></a></p>
     
    </form>
    </body>
    </html>
    et navigation_mois.inc.php dont les variables "o" et "s" ne sont pas initialisées:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <? 
     
    include("../includes/mois.inc.php");
     
    if (!isset($_GET['a']) || (int)$_GET['a']==0) $a=date("Y"); else $a=$_GET['a'];
    if (!isset($_GET['m']) || (int)$_GET['m']==0) $m=date("m"); else $m=$_GET['m'];
     
    echo "<table border=0 cellpadding=2 cellspacing=2 align=center>";
    $indexm=(int)$m;
     
    $ap=$a-1;
    $as=$a+1;
    echo "<tr>
    <td><a href=\"index.php?a=$ap&m=$m&o=".$_GET['o']."&s=".$_GET['s']."\"><img src=\"". WWWROOT."/".IMAGESDIR."/gg.gif\" border=0></a></td>\n
    <td colspan=12 align=center class=12><strong>$mois[$indexm] $a</strong></td>\n
    <td><a href=\"index.php?a=$as&m=$m&o=".$_GET['o']."&s=".$_GET['s']."\"><img src=\"". WWWROOT."/".IMAGESDIR."/dd.gif\" border=0></a></td>\n
    </tr>";
    echo "<tr>";
     
    if ($indexm==1) { $mprec=12; $aprec=$a-1; }
    else { $mprec=$indexm-1; $aprec=$a; }
    if ($indexm==12) { $msuiv=1; $asuiv=$a+1; }
    else { $msuiv=$indexm+1; $asuiv=$a; }
    $mprec=sprintf("%02d",$mprec);
    $msuiv=sprintf("%02d",$msuiv);
     
    echo "<td><a href=\"index.php?a=$aprec&m=$mprec&o=".$_GET['o']."&s=".$_GET['s']."\"><img src=\"". WWWROOT."/".IMAGESDIR."/g.gif\" border=0></a></td>";
    for ($i=1;$i<=12;$i++)
    {
    	$mo=sprintf("%02d",$i);
    	if ($indexm!=$i) echo "<td><a href=\"index.php?a=$a&m=$mo&o=".$_GET['o']."&s=".$_GET['s']."\">".$mois_s[$i]."</a></td>";
    	else echo "<td>".$mois_s[$i]."</td>";
    }
    echo "<td><a href=\"index.php?a=$asuiv&m=$msuiv&o=".$_GET['o']."&s=".$_GET['s']."\"><img src=\"". WWWROOT."/".IMAGESDIR."/d.gif\" border=0></a></td>";
     
    echo "</tr>";
    echo "</table>";
    ?>

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1/ news_config.inc.php n'est-il pas justement le fichier de configuration ?

    2/ Tu as ici 2 exemples d'utilisation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (!isset($_GET['a']) || (int)$_GET['a']==0) $a=date("Y"); else $a=$_GET['a'];
    if (!isset($_GET['m']) || (int)$_GET['m']==0) $m=date("m"); else $m=$_GET['m'];
    3/ Enfin, qui t'empêche de faire une recherche ? isset()

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut
    1. dans le fichier news_config.inc.php il y a :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <?
    $FINDPATH="../findpath.inc.php";
    require_once($FINDPATH);
    require_once(DIRROOT . "/db_config.inc.php");
    require("../" . INCLUDEDIR . "/boutons.inc.php");
     
    $NOMFIC="icone-art-et-vin";
    $max_file_size=500000;
    $LIMG=64;
    $HIMG=64;
     
    $lang=array(
    0=>"Gestion des news",
    1=>"",
    2=>"",
    7=>"",
    8=>"",
    9=>"Transfert en cours...",
    10=>"Transfert en cours, veuillez patienter...",
    11=>"Nouvelle news",
    12=>"Formulaire news",
    13=>"Titre",
    14=>"Date",
    15=>"Texte",
    16=>"Auteur",
    17=>"Heure",
    18=>"Gestion des inscrits",
    19=>"Une adresse par ligne",
    20=>"Gestion image",
    21=>"Ajout photo",
    22=>"(taille maxi. 500 Ko)",
    23=>"Fichier",
    24=>"Taille",
    25=>"Dimensions",
    26=>"Titre photo",
    27=>"Catégorie",
    28=>"Ajouter email(s)",
    29=>"Email",
    30=>"Activation",
    31=>"Activ&eacute;",
    32=>"Non activ&eacute;",
    33=>"Formulaire icones"
    );
     
     
     
    $msg_lang=array(
    0=>"Enregistrement créé !",
    1=>"Modifications effectées !",
    2=>"Enregistrement supprim&eacute; !",
    3=>"Confirmer la suppression ?",
    10=>"Erreur, type de  fichiers non acceptés !",
    11=>"Sélectionnez une image dans la liste !",
    13=>"Erreur, champ 'Heure' invalide !",
    14=>"Erreur, champ 'Date' invalide !",
    16=>"Erreur, champ 'Titre' manquant !",
    17=>"Erreur, champ 'Texte' manquant !",
    18=>"Erreur, champ 'Email' invalide !",
    20=>"Suppression impossible !\\nL'enregistrement est présent dans d'autres modules !",
    );
    2. cette synthaxe est trop complexe pour mon niveau

    3. j'ai cherché et j'ai compris qu'il faut ajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (isset($_GET['s']))
    {
         //do stuff that requires 's'
    }
    else
    {
         //do stuff that doesn't need 's'
    }
    Donc ici ce serait pour ajouter les 3 variables manquantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_GET['s']) && isset($_GET['o']) && isset($_GET['act'])) {  }
    J'ai bien compris qu'il faut les déclarer avant de faire appel aux variables mais dans mes deux fichiers faut il les placer en début de page pour que ca s applique à toute la page ou juste avant la première variable appelé car elles sont appelées plusieurs fois dans différentes lignes ? et qu'ajouter dans le else ? C est vraiment une lacune pour moi la rédaction de ces isset.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bon.

    1/ On récupère/vérifie les variables en début de fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // si pas défini...
    if (!isset($_GET['a']) || (int)$_GET['a']==0) $a=date("Y"); else $a=$_GET['a'];
    if (!isset($_GET['m']) || (int)$_GET['m']==0) $m=date("m"); else $m=$_GET['m'];
    // Pour o et s : vide si pas défini
    if (!isset($_GET['o'])) $o=''; else $o=$_GET['o'];
    if (!isset($_GET['s'])) $s=''; else $s=$_GET['s'];
    2/ Puis, dans la suite du code, tu remplaces partout :
    • $_GET['o'] par $o
    • $_GET['s'] par $s


    3/ Au lieu de la logique du 1/ "si pas défini... sinon...", on peut remplacer par une logique "si défini... sinon...".
    Et on peut simplifier l'écriture grâce à l'opérateur ternaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // si pas défini...
    $a = (isset($_GET['a']) && (int)$_GET['a']>0)? $_GET['a'] : date("Y"); // année
    $m = (isset($_GET['m']) && (int)$_GET['m']>0)? $_GET['a'] : date("m"); // mois
    // Pour o et s : vide si pas défini
    $o = (isset($_GET['o']))? $_GET['o'] : '';
    $s = (isset($_GET['s']))? $_GET['s'] : '';
    $o = (isset($_GET['o']))? $_GET['o'] : ''; se traduit par :
    si $_GET['o'] est défini, $o vaut $_GET['o'], sinon il vaut '' (chaine vide).

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut
    Etant autodidacte j apprends beaucoup par la démonstration concrète. Merci ça m'aide beaucoup je vais essayer tout ça.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Tu apprendras mieux si tu es guidé :



    Pour connaitre le fonctionnement de toutes les fonctions PHP (et bien plus) :

  7. #7
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!isset($_GET['a']) || (int)$_GET['a']==0)
    peut également se traduire par :
    Donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!isset($_GET['a']) || (int)$_GET['a']==0) $a=date("Y"); else $a=$_GET['a'];
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $a = (empty($_GET['a'])) ? date('Y') : $_GET['a'];
    empty() test la définition et l'initialisation d'une variable.

    http://php.net/manual/fr/function.empty.php
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut
    donc j ai pris le temps de tout modifier sur les deux pages. J'ai ajouté aussi à la ligne 31 dans le fichier index.php le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (!isset($_GET['act'])) $act=''; else $act=$_GET['act'];
    if ($act==2 && isset($_GET[nid]))
    il reste encore un php notice concernant la ligne 60 du index.php pour la premiere ligne de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if ($order[$o]=="") $o=2;
    else $o=$_GET['o'];
    auparavant il se présentait comme tel mais indiquait quand même une notice
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if ($order[$_GET['o']]=="") $o=2;
    else $o=$_GET['o'];
    Là encore ça dépasse mes compétences.. une idée ? merci

    (Je clôture pas encore le post en résolu car j ai d'autres pages que je dois modifier sur le même principe donc j'attends de toutes les avoir corrigée)

  9. #9
    Invité
    Invité(e)
    Par défaut
    Sans avoir le message complet de la "notice"...

  10. #10
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PHP Notice:  Undefined index:  in /var/www/vhosts/ns0000000.ovh.net/httpdocs/...../index.php on line 59, referer:

  11. #11
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    si tu as changé de serveur, il y a des chance pour que "<?" ne soit plus soutenu et qu'il doit être remplacé par "<?php" et ce à chaque "<?" sur chaque page.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  12. #12
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut
    Je vais remplacer les "<?" remplacé par "<?php" suivant ton conseil Vil'Coyote et je reviens faire un bilan. Merci pour les conseils

  13. #13
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2012
    Messages : 170
    Points : 43
    Points
    43
    Par défaut
    La page se charge normalement désormais mais error log affiche toujours notices

    PHP Notice: Undefined variable: texte in /var/www/vhosts/.../index.php on line 82
    PHP Notice: Undefined index: in /var/www/vhosts/.../index.php on line 60

    Voici la page complète index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    <?php 
    require ("news_config.inc.php"); 
     
    $niveau=1;
    require ("../" . INCLUDEDIR . "/protection.inc.php");
    require ("../" . INCLUDEDIR . "/format.inc.php");
    require ("../" . INCLUDEDIR . "/date.inc.php");
     
    ?>
    <html>
    <head>
    <title><?php echo $lang[0]; ?></title>
    </head>
    <body onContextMenu="return false">
    <form name="form" method="post" action="">
    <link href="../style.css" rel="stylesheet" type="text/css">
    <link href="../style_inputtext.css" rel="stylesheet" type="text/css">
    <script language="JavaScript" src="../fonctions.js"></script>
    <script language="JavaScript" src="fonctions.js"></script>
    <script language="JavaScript">
    <!--
    if (top.location.href == self.location.href) window.location.href = 'frames.php';
    //-->
    </script>
     
    <h3 align=center><?php echo $lang[0]; ?></h3>
     
    <p align=center class=10><a href="news_form.php?act=0" OnClick="news_form=open_news_form('');" target="news_form"><?php echo $lang[11]; ?></a> - <a href="index_inscrits.php"><?php echo $lang[18]; ?></a></p>
     
    <?php
    if (!isset($_GET['act'])) $act=''; else $act=$_GET['act'];
    if ($act==2 && isset($_GET[nid]))
    {
    	$sql="DELETE FROM $tables[news] WHERE new_id='$_GET[nid]'";
    	$result=mysql_query($sql);
    	$sql="DELETE FROM $tables[news_photos] WHERE new_id='$_GET[nid]'";
    	$result=mysql_query($sql);
    }
     
    if (isset($s) && $s==0) { $sens="DESC"; $s=1; }
    else { $sens="ASC"; $s=0; }
     
    include("../includes/navigation_mois.inc.php");
    ?>
    <table border="0" align="center" cellpadding="0" cellspacing="0" class=TABLEBORDER width="70%">
    <tr>
    <td><?php // bordure ?><table width="100%" border=0 cellspacing=1 cellpadding=3 align=center>
    <tr>
    <th width=100%><a href="?a=<?php echo $a; ?>&m=<?php echo $m; ?>&o=0&s=<?php echo $s; ?>"><?php echo $lang[13]; ?></a></th>
    <th><a href="?a=<?php echo $a; ?>&m=<?php echo $m; ?>&o=1&s=<?php echo $s; ?>"><?php echo $lang[16]; ?></a></th>
    <th><a href="?a=<?php echo $a ?>&m=<?php echo $m; ?>&o=2&s=<?php echo $s; ?>"><?php echo $lang[14]; ?></a></th>
    <th width=15><img src="../images/editer.gif" alt="<?php echo $bt_lang[1] ?>"></th>
    <th width=15><img src="../images/supprimer.gif" alt="<?php echo $bt_lang[2] ?>"></th></tr>
    </tr>
    <?php
    $order[]="titre";
    $order[]="nick";
    $order[]="date";
     
    if ($order[$o]=="") $o=2;
    else $o=$_GET['o'];
     
    $sql="SELECT t1.*, nick FROM $tables[news] as t1, $tables[users] as t2 
    	WHERE t1.user_id=t2.user_id
    	AND year(date)=".$a."
    	AND month(date)=".$m."
    	ORDER BY " . $order[$o] . " $sens";
    $result=mysql_query($sql); 
     
    for ($i=0;$result && $row=mysql_fetch_array($result);$i++) 
    {	
    	$date=mysql2date($row['date']);
    /* 	if ($row[texte]!="") $texte="<img src=\"". WWWROOT .  "/" . IMAGESDIR ."/notes.gif\" alt=\"".addslashes(remove_tags($row[texte]))."\" align=absmiddle>";
    	else $texte="";
    */
     
    	if ($i & 1) $style=1; else $style=2;
     
    	echo "<tr class=TABLEDATA$style onmouseover=\"this.className='TABLEDATAO'\"
        onmouseout=\"this.className='TABLEDATA$style'\">
    	<td nowrap>".remove_tags($row['titre'])."&nbsp;$texte</td>
    	<td>$row[nick]</td>
    	<td align=center nowrap>$date - $row[heure]</td>
    	<td align=center>
    	<a href=\"news_form.php?act=1&nid=$row[new_id]\" OnClick=\"news_form=open_news_form('');\" target=\"news_form\">
    	<img src=\"../images/editer.gif\" border=0 alt=\"$bt_lang[1]\">
    	</a>
    	</td>
    	<td align=center>";
     
    	echo "<a href=\"?act=2&nid=$row[new_id]\" OnClick=\"if (confirm('$msg_lang[3]')) return true; else return false;\">";
    	echo "<img src=\"../images/supprimer.gif\" border=0 alt=\"$bt_lang[2]\">";
    	echo "</a>";
    	echo "</td></tr>\n";
    }
     
    ?>
    </table><?php // bordure ?></td>
    </tr>
    </table>
     
    <p align=center class=10><a href="news_form.php?act=0" OnClick="news_form=open_news_form('');" target="news_form"><?php echo $lang[11]; ?></a> - <a href="index_inscrits.php"><?php echo $lang[18]; ?></a></p>
     
    </form>
    </body>
    </html>

  14. #14
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    il va falloir que tu apprennes à lire et comprendre les messages d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PHP Notice: Undefined variable: texte in /var/www/vhosts/.../index.php on line 82
    variable "texte" non définie à la ligne 82
    -> $texte

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PHP Notice: Undefined index: in /var/www/vhosts/.../index.php on line 60
    indice "" non défini à la ligne 60
    -> $o vaut '' (chaine vide)
    donc $order[$o] vaut $order[''], indice non défini.
    Dernière modification par Invité ; 20/11/2015 à 00h17.

  15. #15
    Invité
    Invité(e)
    Par défaut
    Au pire tu peux utiliser la fonction "empty"

    La fonction empty renvoie false si :
    • La variable est vide.
    • La variable est null.
    • La variable n'existe tout simplement pas.
    • La variable vaut false.
    • La variable vaut 0


    La fonction "isset" est plus restrictive et permet simplement de tester si la variable est définie.

    Par ailleurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	$_SESSION['mon_prenom'] = "Toto";
    	echo 'Je m\'appelle ' . $_SESSION['mon_prenom']; // Correct
    	echo "Je m'appelle $_SESSION[mon_prenom]"; // Correct

Discussions similaires

  1. [EDI CSS] un édietur CSS sympa pour un débutant
    Par java_fun dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 21/09/2005, 10h44
  2. De l'aide pour un débutant
    Par Abelkims dans le forum Débuter
    Réponses: 21
    Dernier message: 02/09/2005, 11h11
  3. De l'aide pour un débutant
    Par Abelkims dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 16/08/2005, 14h33
  4. Requete pour un débutant
    Par sqlnoob dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/05/2005, 08h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo