Se connecter avec
S'enregistrer | Connectez-vous

erreur script

Dernière réponse : dans Programmation

Bonjour,

J'ai une erreur dans mon script "function" et forcement ca me donne une erreur: Fatal error: Function name must be a string in

Si vous pouviez m'expliquez ou est mon erreur et comment la rectifier, je vous mets le bout de code: merci.

  1. <?php
  2. include("admin/connec.php");
  3. $ip = $_SERVER['REMOTE_ADDR'];
  4. $jour = date("Y/m/d");
  5. $email = $_POST['email'];
  6.  
  7. function verif($email)
  8. {
  9. $spr = "^[[:alnum:]][a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$";
  10. return !eregi($spr, $email);
  11. }
  12.  
  13. // Si erreur dans le format du mail
  14. if ($PHP_SELF = $envoyer(verif))
  15. {
  16. echo '<script langage = "javascript">';
  17. echo 'alert("Veuillez entrez une adresse email valide");';
  18. echo '</script>';
  19. }
  20.  
  21. // Control dans la base si contact existe
  22. else
  23. {
  24. $connec = mysql_connect($host,$login,$pass);
  25. $selection = mysql_select_db($base, $connec);
  26. $sql = "SELECT id FROM news WHERE email='$email'";
  27. $resultat = mysql_query($sql, $connec);
  28. $res = mysql_num_rows($resultat);
  29. if($res!=0) // l'url existe déjà, on affiche un message d'erreur
  30. {
  31. echo '<script langage = "javascript">';
  32. echo 'alert("Vous etes deja enregistrer");';
  33. echo '</script>';
  34. }
  35.  
  36. // Insertion du nouveau contact
  37. else
  38. {
  39. $saisir = "INSERT INTO news (ip,jour,email) VALUES
  40. ('" .addslashes($_POST[ip]). "','" .addslashes($_POST[jour]). "','" .addslashes($_POST[email]). "')";
  41. $result = mysql_query($saisir) or die("Erreur d'Insertion dans la base : ". $saisir .'<br/>'. mysql_error());
  42. echo '<script langage = "javascript">';
  43. echo 'alert("Vous êtes maintenant enregistrer et recevrez les news régulierment, merci");';
  44. echo '</script>';
  45. mysql_close();
  46. }
  47. }
  48. ?>
  49. <form action="" method="post" onclick="<?php $PHP_SELF ?>">
  50. - Abonnement aux News -<br>
  51. <input name="ip"type="hidden" value="<?php echo $ip ?>">
  52. <input name="jour"type="hidden" value="<?php echo $jour ?>">
  53. <input class="pos_input" name="email"type="text"><br> <br>
  54. <input class="pos_input1" name="envoyer" type="submit" value="S'enregistrer" >
  55. </form>

Autres pages sur : erreur script

Lassé par la pub ? Créez un compte

À la ligne 15, tu as écrit cela :
  1. if ($PHP_SELF = $envoyer(verif))


verif étant ta fonction et $envoyer est ta variable. Tu ne peux pas effectuer cette opération. Il faut faire comme ceci :

  1. if ($PHP_SELF = verif($envoyer))


On appelle la vonction verif et on lui passe la variable $envoyer en paramètre. Voila !
Lassé par la pub ? Créez un compte