Problème utilisation de fonctions php
Bonjour,
Je suis nouveau sur le forum.
Voila ma situation:
Je suis chargé de réalisé un Intranet web (php/mysql).
J'ai ce fichier "fonctions.php" dans lequel je met des fonctions que j'utilise dans les autres pages du site :
Code:
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
session_start() ; // initialisation
//Connexion au serveur
$connexion=mysql_connect('localhost','test','')or die("Désolé, connexion impossible au serveur");
//selection et connexion de la bdd
mysql_select_db('pcm2009',$connexion) or die ("Désolé, connexion à la base impossible");
function is_user($login, $pass, $ip)
{
$logg = "SELECT * FROM agent WHERE adresse_ip_ag='$ip'";
$query = mysql_query($logg);
if (mysql_num_rows($query) == 1)
{
$row = mysql_fetch_array($query);
$password_r = $row['PASSWORD_AG'];
$login_r = $row['LOGIN_AG'];
if($pass == $password_r && $login == $login_r)
{
return 1;
}
else return 0;
}
else return 0;
}
function liste_d($champ,$table,$condition,$name,$value,$affiche)
{
$query = mysql_query("select $champ from $table where $condition");
echo '<select name="'.$name.'">';
while ($result = mysql_fetch_assoc($query)) {
echo '<option value="'.$result[$value].'">'.$result[$affiche].'</option>';
}
echo '</select>';
}
function get_year()
{
$date = date("Y");
return $date;
}
function get_other_year($diff)
{
$date = date("Y");
$date=$date+$diff;
return $date;
}
function enr_date($jour,$mois,$annee)
{
$j=1;
echo '<select name="'.$jour.'">';
while($j <= 31)
{
echo'<option value="'.$j.'">'.$j.'</option>';
$j++;
}
echo'</select>';
echo '<select name="'.$mois.'">';
echo'<option value="01">Janvier</option>';
echo'<option value="02">Février</option>';
echo'<option value="03">Mars</option>';
echo'<option value="04">Avril</option>';
echo'<option value="05">Mai</option>';
echo'<option value="06">Juin</option>';
echo'<option value="07">Juillet</option>';
echo'<option value="08">Août</option>';
echo'<option value="09">Septembre</option>';
echo'<option value="10">Octobre</option>';
echo'<option value="11">Novembre</option>';
echo'<option value="12">Décembre</option>';
echo'</select>';
$i=get_year();
echo '<select name="'.$annee.'">';
while($i < get_other_year(15))
{
echo'<option value="'.$i.'">'.$i.'</option>';
$i++;
}
echo'</select>';
}
function nouvelle_ref_dossier()
{
$an='toto';
$req = "SELECT COMPTEUR_DO FROM DOSSIER WHERE ANNEE_DO='$an'";
$query = mysql_query($req);
if (mysql_num_rows($query) == 1)
{
$row = mysql_fetch_array($query);
$compteur = $row['COMPTEUR_DO'];
$compteur++;
}
else
{
$compteur = 1;
}
$result=$compteur." PCM ".substr($an,2);
return $result;
}
?> |
Et voici une page où j'utilise 2 de ces fonctions ( liste_d() enr_date() et nouvelle_ref_dossier() ) :
Code:
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
| <?php
require("fonctions.php");
if (isset($_SESSION['password_ag']))
{
}
else
{
header("Location: index.php");
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Intranet PCM</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="fr" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="DC.Language" scheme="RFC3066" content="fr" />
<link rel="stylesheet" href="style.css" type="text/css" media="screen" title="Normal" />
</head>
<body>
<?php
require("menuhorizontal.php");
?>
<div id="connexion">
<?php
require("blocsession.php");
?>
</div>
<?php
require("menuvertical.php");
?>
<div id="contenu">
<h2>Création d'un dossier d'affaire</h2>
<form class="f" method="post" action="ZZZZ.php">
<p>Test</p>
<p><?php nouvelle_ref_dossier();?>
<p>Thème :</p>
<?php liste_d("num_th, nom_th","theme","existe_th=1","theme",'num_th','nom_th')?>
<p>Chargé d'affaire :</p>
<?php liste_d("num_ag, nom_ag, prenom_ag","agent","existe_ag=1 and statut_ag='statut'","charge_affaire",'num_ag','nom_ag')?>
<p>Secrétaire :</p>
<?php liste_d("num_ag, nom_ag, prenom_ag","agent","existe_ag=1 and statut_ag='secretaire'","secretaire",'num_ag','nom_ag')?>
<p>Programme :</p>
<input type="text" name="programme" size="15" maxlength="15"/>
<p>Objet (200 caractères maximum) :</p>
<textarea name="objet" cols="68" rows="4" /></textarea>
<p>Demandeur :</p>
<input type="text" name="demandeur" size="80" maxlength="80"/>
<p>Adresse :</p>
<input type="text" name="adresse" size="100" maxlength="100"/>
<p>Code postal :</p>
<input type="text" name="code_postal" size="10" maxlength="11"/>
<p>Ville :</p>
<input type="text" name="ville" size="80" maxlength="80"/>
<p>Pays :</p>
<input type="text" name="pays" size="60" maxlength="60"/>
<p>Date du délai :</p>
<?php enr_date("delai_jour","delai_mois","delai_annee") ?>
<p>Remarque (150 caractères maximum) :</p>
<textarea name="remarque" cols="58" rows="4" /></textarea>
<p>Tarif :</p>
<input type="text" name="pays" size="8" maxlength="8" value="0"> </input>
<br><br>
<input type="submit" name="validation" value="Valider" />
<input type="reset" value="Annuler" />
</form>
</div>
</body>
</html> |
Seulement, les fonctions liste_d() et enr_date() fonctionnent parfaitement, mais j'ai donc créé dernièrement la fonction nouvelle_ref_dossier(), mais elle ne fonctionne pas.
Par curiosité, j'ai essayé de créer une autre fonction :
Code:
1 2 3 4 5
| function plus_un($i)
{
$i=$i+1;
return $i;
} |
que j'ai appelé dans la page d'en haut par:
Code:
<p><?php plus_un(5);?>
En espérant qu'elle me retourne "6", mais rien.
J'ai effacé mes traces dans mes navigateurs, j'ai renommé le nom du dossier de mon site dans le repertoire 'www'. J'ai même essayé sur un autre ordinateur, toujours rien.
Que me conseillez-vous ? Avez-vous une idée ?
J'espère avoir été clair dans l'explication de mon problème.