Page blanche lors de l'ajout d'un appel à une fonction

Résolu
Marlocq Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   -  
Marlocq Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour mon problême est le suivant: lorsque j’ajoute l'appel a une fonction alors que celle doit être appelé que sous certaine condition ma page devient systématiquement planche....

<?php
session_start();

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

Require_once('db_fns.php');
Require_once('fonctions.php');
Require_once('fonctionbdd.php');
$db_conn = db_connect ();

if (isset($_SESSION['user_ok'])) {
} else {
 echo "<head>";
 echo '<meta http-equiv="refresh" content="0;url=index.php">';
 echo "</head>";
 exit;
}
 
$db_conn = db_connect ();
/** $modifiant et $soc par les sessions  **/
$id_user = $_SESSION['iduti'];
$nom_session = $_SESSION['nom'];
$prenom_session = $_SESSION['prenom'];
$id_statut_session = $_SESSION['statut'];
$id_soc = $_SESSION['societe'];
$mail_session = $_SESSION['mail'];
$rang_statut_session = $_SESSION['rang_statut'];
$pg_admin_session = $_SESSION['pg_administration'];
$pg_gestion_session = $_SESSION['pg_gestion'];
$pg_hor_session = $_SESSION['pg_hor'];
$pg_consult_session = $_SESSION['pg_consult'];
$pg_divers_session = $_SESSION['pg_divers'];
$nompageprin = "gestion";
$nompage = 'permanences';

if ($pg_gestion_session!='oui') {
 echo "<head>";
 echo '<meta http-equiv="refresh" content="0;url=index.php">';
 echo "</head>";
 exit;
}

/** Récupérez les droits de pages consultations. **/
$req_pgauto= " SELECT p2.pg_dem_gest, p2.pg_abs_gest, p2.pg_cal_gest, p2.pg_rap_gest, p2.pg_histo_gest
     FROM donneuti p1, statuts p2
     WHERE id_uti = '$id_user'
     AND p1.statuts_id_statut = p2.id_statut " ;
$requ_pgauto= $db_conn->query($req_pgauto);
while ($req_data_pgauto = $requ_pgauto->fetch()) {
 $pg_demandes=$req_data_pgauto['pg_dem_gest'];
 $pg_absencesuti=$req_data_pgauto['pg_abs_gest'];
 $pg_calendrier=$req_data_pgauto['pg_cal_gest'];
 $pg_rapports=$req_data_pgauto['pg_rap_gest'];
 $pg_historique=$req_data_pgauto['pg_histo_gest'];
/* $pg_permanences=$req_data_pgauto['pg_histo_gest'];*/
}
$pg_permanences='oui';

if ($pg_permanences!='oui') {
 echo "<head>";
 echo '<meta http-equiv="refresh" content="0;url=index.php">';
 echo "</head>";
 exit;
}
/** récupération des données **/
/** recupération du membre **/
$error_mess="";
if (!empty($_POST['nommembre'])) {
 $idmembres = $_POST['nommembre'];
} else {
 $idmembres= '';
}
if (!empty($_POST['sup'])) {
 $idsup = $_POST['sup'];
} else {
 $idsup= '';
}

if(!empty($_GET['jstr'])) {
 $fincs_get = $_GET['jstr'];
 $fincs_verif=verif_Num($fincs_get);
 if ($fincs_verif==1) {
  $fincs = modifdatenorm($fincs_get);
  $daychoix = $fincs;
  $debabs_modif=$fincs_get;
 } else {
  $error_mess="Veuillez ne pas modifez les variables. Un mail a été envoyé à un administrateur.";
 }
} else {
 $debabs_modif=htmlspecialchars(addslashes(trim($_POST['datechoixhisto'])));
 $fincs = modifdatenorm($debabs_modif);
}
$today = date("d/m/Y"); 
$today_str = modifdatestr($today);
if($debabs_modif<=$today_str) {
 $error_mess="La date est plus petite ou égale au jour courrant.";
}

$date_jour = formaterDateBadgefull($debabs_modif);
 /** Vérifier dans la bdd si les membres sont disponibles à la date demandés **/
if ($idmembres!="" AND $error_mess=="") {
 $req_verif_date = "SELECT * FROM datebadge WHERE date ='$debabs_modif' AND id_uti='$idmembres' OR date='$debabs_modif' AND id_uti='$idsup' ";
 $requete_date = $db_conn->query($req_verif_date);
 $data_req_date = $requete_date->fetchAll(PDO::FETCH_ASSOC);
 $nb_date = count($data_req_date);
 if($nb_date>0) {
  $error_mess="Au moin un des membres choisi à déjà une date entrée."; 
 } else {
  /** Si aucune date n'est retournée on insert dans la bdd en récupérant les heures à prester etc **/
  for($i=0;$i<2;$i++) {
   if ($i=='0') { $idmem=$idmembres; $nomabs="per"; } else { $idmem=$idsup; $nomabs="sup"; }
   echo"idmembres=$idmem";
   echo"nomabs=$nomabs";
   $insert=function InsertDatePerma($idmem,$nomabs,$debabs_modif);
   echo"<p>$insert</p>";
  }
  $error_mess="Permanence ajouté. Vous allez être redirigé dans un instant.";
  /*echo"<meta http-equiv=\"refresh\" content=\"1; url=permanences.php?jstr=$debabs_modif\">";*/
 }
}

?>
<!doctype [https://www.commentcamarche.net/html/htmlintro.php3 html]>
<html lang="fr">
<head>
<title>Gestion du temps</title>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta content="" name="keywords">
<meta content="" name="author">
<meta content="" name="description">
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<link href="css/resetnav.css" type="text/css" rel="stylesheet">
<link href="css/index.css" type="text/css" rel="stylesheet">
<link rel="stylesheet" href="css/ui-darkness/jquery-ui-1.9.1.custom.css"/>
<script src="javascript/jquery-1.8.2.js"></script>
<script src="javascript/jquery-ui-1.9.1.custom.js"></script>
<script src="javascript/datepicker.js"></script>
<script type="text/javascript">
 function afficher()
 {
  document.getElementById("champ_cache").style.display = "inline";
 }
 function cacher()
 {
  document.getElementById("champ_cache").style.display = "none";
 }
 function afficher_radio()
 {
  document.getElementById("radio_cache").style.display = "block";
  document.getElementById("jc").style.display = "none";
 }
 function cacher_radio()
 {
  document.getElementById("radio_cache").style.display = "none";
  document.getElementById("jc").checked = true;
 }
</script>
</head>
<body>
<div id="taille">
 <nav>
 <div id="menusup">
  <ul>
   <li id="votrecompte" <?php if($nompageprin=='votrecompte'){echo'class="active"';} ?>><a href="votrecompte.php" title="Votre compte">Votre compte</a></li>
   <?php if ($pg_gestion_session=='oui') : ?>
   <li <?php if($nompageprin=='gestion'){echo'class="active"';} ?>><a href="gestion.php" title="Gestion du service">Gestion</a></li>
   <?php endif ?>
   <?php if ($pg_hor_session=='oui') : ?>
   <li <?php if($nompageprin=='horraire'){echo'class="active"';} ?>><a href="horraire.php" title="Gestion des horraires">Horaires</a></li>
   <?php endif ?>
   <?php if($pg_admin_session=='oui') : ?>
   <li <?php if($nompageprin=='admin'){echo'class="active"';} ?>><a href="administration.php" title="Administration des utilisateurs">Administration</a></li>
   <?php endif ?>
   <?php if ($pg_consult_session=='oui') : ?>
   <li <?php if($nompageprin=='consulter'){echo'class="active"';} ?>><a href="consulter.php" title="Consulter les utilisateurs">Consultation</a></li>
   <?php endif ?>
   <?php if ($pg_divers_session=='oui') : ?>
   <li <?php if($nompageprin=='divers'){echo'class="active"';} ?>><a href="divers.php" title="Gérer les jours fériés,...">Divers</a></li>
   <?php endif ?>
  </ul>
 </div>
 <div id="menusecondaire">
  <ul>
   <?php if ($pg_demandes=='oui') : ?>
   <li <?php if($nompage=='demandes'){echo'class="subactive"';} ?>><a href="demandes.php" title="Gestion des demandes">Demandes</a></li>
   <?php endif ?>
   <?php if ($pg_absencesuti=='oui') : ?>
   <li <?php if($nompage=='absencesuti'){echo'class="subactive"';} ?>><a href="absencesuti.php" title="Gestions des absences des utilisateurs">Absences</a></li>
   <?php endif ?>
   <?php if ($pg_calendrier=='oui') : ?>
   <li <?php if($nompage=='calendrier'){echo'class="subactive"';} ?>><a href="calendrier.php" title="Calendrier des utilisateurs">Calendrier</a></li>
   <?php endif ?>
   <?php if ($pg_rapports=='oui') : ?>
   <li <?php if($nompage=='rapports'){echo'class="subactive"';} ?>><a href="rapports.php" title="Voir les rapports des membres">Rapports</a></li>
   <?php endif ?>
   <?php if ($pg_historique=='oui') : ?>
   <li <?php if($nompage=='historique'){echo'class="subactive"';} ?>><a href="historique.php" title="Voir l'historique des membres">Historique</a></li>
   <?php endif ?>
   <?php if ($pg_permanences=='oui') : ?>
   <li <?php if($nompage=='permanences'){echo'class="subactive"';} ?>><a href="permanences.php" title="Gérer les permanences des membres">Permanences</a></li>
   <?php endif ?>
  </ul>
 </div>
 <div class="clear"></div>
 </nav>
<div id="contain">
 <div id="ficheperso">
  <?php if ($error_mess!='') : ?>
  <div class="errormess">
   <p><?php echo"$error_mess"; ?></p>
  </div>
  <?php endif ?>
  <div id="util">
   <div id="pageperma">
    <h1 id="titreperma"><?php echo"$date_jour $fincs"; ?></h1>
    <form method="post" action="ajoutpermanences.php">
     <label>Permanences :</label>
     <select name="nommembre">
      <option value=""></option>
      <?php 
      $req_nom_membre = " SELECT * FROM donneuti WHERE id_societe = $id_soc AND statuts_id_statut='1' ORDER BY nom ASC ";
      $requete_nom_membre = $db_conn->query($req_nom_membre);
      while ($req_data_membre = $requete_nom_membre->fetch()) {
       $nb_date="";
       $idmembre=$req_data_membre['id_uti'];
       $nommembre=$req_data_membre['nom'];
       $prenommembre=$req_data_membre['prenom'];
       $req_verif_date = "SELECT * FROM datebadge WHERE date ='$debabs_modif' AND id_uti='$idmembre' ";
       $requete_date = $db_conn->query($req_verif_date);
       $data_req_date = $requete_date->fetchAll(PDO::FETCH_ASSOC);
       $nb_date = count($data_req_date);
       $nomaffiche = "$nommembre $prenommembre";
       if ($nb_date=='0') {
        echo '<option value="' . $idmembre. '"';
        if ($idmembres == $idmembre)  {
          echo " selected ";
        }
        echo '">' . $nomaffiche . '</option>';
       }
      }
      ?>
      <option value="" style="font-style: italic;">*** Avec statut : ***</option>
      <?php
       $requete_membre_stat = " SELECT * FROM donneuti WHERE id_societe = $id_soc AND statuts_id_statut!='1' AND statuts_id_statut!='3' ORDER BY nom ASC ";
       $requete_membre_statut = $db_conn->query($requete_membre_stat);
       while ($req_data_membre_statut = $requete_membre_statut->fetch()) {
        $nb_date="";
        $idmembre=$req_data_membre_statut['id_uti'];
        $nommembre=$req_data_membre_statut['nom'];
        $prenommembre=$req_data_membre_statut['prenom'];
        $nomaffiche = "$nommembre $prenommembre";
        $req_verif_date = "SELECT * FROM datebadge WHERE date ='$debabs_modif' AND id_uti='$idmembre' ";
        $requete_date = $db_conn->query($req_verif_date);
        $data_req_date = $requete_date->fetchAll(PDO::FETCH_ASSOC);
        $nb_date = count($data_req_date);
        if ($nb_date=='0') {
         echo '<option value="' . $idmembre. '"';
         if ($idmembres == $idmembre)  {
           echo " selected ";
         }
         echo '">' . $nomaffiche . '</option>';
        }
       }
      ?>
     </select><br />
     <label>Suppléant :</label>
     <select name="sup">
      <option value=""></option>
      <?php 
      $req_nom_membre = " SELECT * FROM donneuti WHERE id_societe = $id_soc AND statuts_id_statut='1' ORDER BY nom ASC ";
      $requete_nom_membre = $db_conn->query($req_nom_membre);
      while ($req_data_membre = $requete_nom_membre->fetch()) {
       $nb_date="";
       $idmembre=$req_data_membre['id_uti'];
       $nommembre=$req_data_membre['nom'];
       $prenommembre=$req_data_membre['prenom'];
       $req_verif_date = "SELECT * FROM datebadge WHERE date ='$debabs_modif' AND id_uti='$idmembre' ";
       $requete_date = $db_conn->query($req_verif_date);
       $data_req_date = $requete_date->fetchAll(PDO::FETCH_ASSOC);
       $nb_date = count($data_req_date);
       $nomaffiche = "$nommembre $prenommembre";
       if ($nb_date=='0') {
        echo '<option value="' . $idmembre. '"';
        if ($idsup == $idmembre)  {
          echo " selected ";
        }
        echo '">' . $nomaffiche . '</option>';
       }
      }
      ?>
      <option value="" style="font-style: italic;">*** Avec statut : ***</option>
      <?php
       $requete_membre_stat = " SELECT * FROM donneuti WHERE id_societe = $id_soc AND statuts_id_statut!='1' AND statuts_id_statut!='3' ORDER BY nom ASC ";
       $requete_membre_statut = $db_conn->query($requete_membre_stat);
       while ($req_data_membre_statut = $requete_membre_statut->fetch()) {
        $nb_date="";
        $idmembre=$req_data_membre_statut['id_uti'];
        $nommembre=$req_data_membre_statut['nom'];
        $prenommembre=$req_data_membre_statut['prenom'];
        $nomaffiche = "$nommembre $prenommembre";
        $req_verif_date = "SELECT * FROM datebadge WHERE date ='$debabs_modif' AND id_uti='$idmembre' ";
        $requete_date = $db_conn->query($req_verif_date);
        $data_req_date = $requete_date->fetchAll(PDO::FETCH_ASSOC);
        $nb_date = count($data_req_date);
        if ($nb_date=='0') {
         echo '<option value="' . $idmembre. '"';
         if ($idsup == $idmembre)  {
           echo " selected ";
         }
         echo '">' . $nomaffiche . '</option>';
        }
       }
      ?>
     </select><br />
     <input type="text" name="datechoixhisto" value="<?php echo"$debabs_modif"; ?>" style='display:none;'>
     <input type="submit" name="submit" value="Envois" />
    </form>
   </div>
  </div>
 </div>
</div>
</div>
<footer>
 <div id="pied_page">
 <ul>
  <li id="btndeco"><a href="deconnexion.php">Déconnection</a></li>
 </ul>
 </div>
</footer>
</body>
</html>


le problême se situe au niveau de $insert pas de retourd de message d'erruer... si je le passe en notification avec les /* */ la page redevien fonctionnelle...
A voir également:

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Tu parles de cette ligne
$insert=function InsertDatePerma($idmem,$nomabs,$debabs_modif);

??

Que vient faire là, le mot "function" ?

Remplaces ta ligne par :
$insert = InsertDatePerma($idmem,$nomabs,$debabs_modif);


NB: Lorsque tu utilises les balises de code, ajoute y le "langage" pour avoir la coloration syntaxique, la numérotation des lignes et l'indentation ( j'ai corrigé ton message précédent )
Explications à lire entièrement disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

NB² : Vu que tu fais du PDO, appliques les consignes ici dans tes codes.
Cela évitera de nombreux potentiels soucis : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs


0
Marlocq Messages postés 116 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour le lien.

Encore une bête erreur, je me demande comment je peux lire mon code sans m'en rendre compte...

Merci pour l'aide
0