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

  FORUM HardWare.fr
  Programmation
  PHP

  [REGLÉ] Fonction php avec variables : débutant

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[REGLÉ] Fonction php avec variables : débutant

n°2296568
tomware
Moteur à eau
Posté le 17-02-2017 à 12:50:08  profilanswer
 

Salut :hello:  
 
Je voudrais créer une fonction php contenant des variables mais je ne sais pas où doivent se situer les variables dans mon script/page.
Je débute c'est la premiere fonction que j'ecris.
 
Dans ma page j'ai 2 variables qui sont déclarées en en-tête du script :

Citation :

<?php
$ip = $_SERVER["HTTP_CF_CONNECTING_IP"]; // CLOUDFLARE
$host = gethostbyaddr($ip);  
?>


 
Ma fonction php est un log de connexion ip, j'ai donc juste en dessous  :

Citation :


function log_erreur()  
{  
    $sql = "INSERT INTO log_membre_login_error (id,ip,host) VALUES ('','$ip','$host')";
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    echo "$sql";
}


 
Et donc voici le code dans ma page  :  

Citation :


<?php
log_erreur();
?>


 
Dans la meme page nous avons donc :  

Citation :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?php
$ip = $_SERVER["HTTP_CF_CONNECTING_IP"]; // CLOUDFLARE
$host = gethostbyaddr($ip);  
 
function log_erreur()  
{  
    $sql = "INSERT INTO log_membre_login_error (id,ip,host) VALUES ('','$ip','$host')";
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    echo "$sql";  
}
 
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Ma page</title>
</head>
 
<body>
<?php
echo "bienvenue sur ma page";
log_erreur();
?>
</body>
</html>


 
Mais le contenu rapatrié par ma fonction est vide.  

Citation :

INSERT INTO log_membre_login_error ( id, ip, host) VALUES( '', '', '')


 
Que dois je faire ?  
 
Merci d'avance pour votre aide  :jap:


Message édité par tomware le 18-02-2017 à 01:39:44
mood
Publicité
Posté le 17-02-2017 à 12:50:08  profilanswer
 

n°2296578
NewsletTux
&lt;Insérez ici votre vie /&gt;
Posté le 17-02-2017 à 15:45:37  profilanswer
 

Salut,
 
2 possibilités :
1) tu passes tes variables en paramètre de fonction.
 
Concrètement, au lieu de "log_erreur();"
 
Tu mets :
 
Log_erreur($host, $ip); // les 2 variables définies en tête
 
Et ta fonction devient alors :
 
Function log_erreur($host, $ip) {
...
}
 
Attention: au sein même de ta fonction, ce sont des variables "locales", c.a.d. que le $ip dans ta fonction est reçu mais n'est pas la même variable qu'en dehors de ta fonction.
 
 
2) tu les passes en globales, pour avoir une portée globale. Mais... c'est pas une vraie solution...
 
Attention bis : dans ton insert il faut protéger des injections SQL tes variables.


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°2296588
tomware
Moteur à eau
Posté le 17-02-2017 à 19:46:30  profilanswer
 

salut NewsletTux  :hello:  
 
Merci pour ce petit cours  :jap:  
 
c'est bon pour moi


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

  [REGLÉ] Fonction php avec variables : débutant

 

Sujets relatifs
Utilisation de variables avec VLookupTWS PB variables dépendantes
fonction achatFonction backspace et mode insert versus overwrite.
Matplotlib variable -> fonctionAide Php + Python (débutant)
[html5 / css / php] débutant demande aide edit (php)GIT, débutant, bases, bonnes pratiques...
Plusieurs variables ou un tableau? (Performances)Fonction Random
Plus de sujets relatifs à : [REGLÉ] Fonction php avec variables : débutant


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