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

Résolu/Fermé
Marlocq Messages postés 117 Date d'inscription mardi 19 novembre 2013 Statut Membre Dernière intervention 10 septembre 2023 - Modifié le 29 mai 2020 à 11:11
Marlocq Messages postés 117 Date d'inscription mardi 19 novembre 2013 Statut Membre Dernière intervention 10 septembre 2023 - 29 mai 2020 à 12:27
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 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
29 mai 2020 à 11:14
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 117 Date d'inscription mardi 19 novembre 2013 Statut Membre Dernière intervention 10 septembre 2023
29 mai 2020 à 12:27
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