S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

Re: S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

par lucieemtl » 07 janv. 2016, 18:16

Non puisque le code n'est pas le même. Pourriez-vous m'aider ?

Re: S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

par @rthur » 07 janv. 2016, 17:40

Donc c'est le même problème que ce message, non ?
php-debutant/ajax-empecher-rechargement ... 75230.html

Si oui, je ferme celui là, ça ne sert à rien d'avoir 2 sujets pour un même pb

Re: S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

par lucieemtl » 07 janv. 2016, 16:11

:(

Re: S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

par lucieemtl » 07 janv. 2016, 15:45

Bonjour,

Je créer un plugin Wordpress qui consiste à associer une image à une page.
J'ai donc créer un formulaire qui apparaît depuis la création de page dans le backend de Wordpress, et les images s'envoient bien dans la base de données, pas de soucis, également dans un répertoire temporaire. Il n'y a aucun problème.

Le seul soucis qui se pose c'est que dès lors que, l'image ait bien été enregistrée là où il le fallait, un message "Fichier envoyé avec succès" est visible, APRES que la page rechargée. Et il ne faut pas car si j'étais au préalable en train d'écrire un article.. Zou ! Plus rien !

Alors pour remédier à ça, j'ai effectué ce script grâce à ce site : http://hayageek.com/jquery-ajax-form-submit/ et le problème est que lorsque j'appuie sur le bouton, un panneau alerte javascript prévu par le navigateur me demande si je veux quitter la page ou y rester. Hors, mon script sert pourtant bien à ce qu'il n'y est pas ce genre de soucis...

Voici ci-après le message lancé par la console de Chrome :

Code : Tout sélectionner

Uncaught ReferenceError: $post.php?post=6&action=edit:4 is not defined

Re: S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

par @rthur » 07 janv. 2016, 15:33

Bonjour,

Quel est le problème ? Qu'est-ce qui ne marche pas ?
Où bloques-tu ? Quels sont les message d'erreurs ?

S'il vous plaît... Qu'est ce qu'il peut bien clocher dans mon code ? :(

par lucieemtl » 07 janv. 2016, 15:05

Bonjour à tous et à toute,

Voilà, tout mon problème est dans le titre, et voici ci-après mon code (j'ai beau avoir tourné plusieurs fois le problème, rien ne va...)

Code : Tout sélectionner

<?php /* Plugin Name: Essai plugin Plugin URI: http://zero-plugin.com Description: Un plugin d'introduction pour le développement sous WordPress Version: 0.1 Author: Lucie MUTEREL Author URI: http://votre-site.com License: GPL2 */ ?> <head> <script type="text/javascript"> //Callback handler for form submit event $("#multiform").submit(function(e) { var formObj = $(this); var formUrl = formObj.attr("action"); var formData = new FormData(this); $.ajax({ url: "../wp-admin/upload.php", async: true, type: 'POST', data: formData, mimeType:"multipart/form-data", /*contentType: false, cache: false, processData:false*/ success: function(data, textStatus, jqXHR) { $('#zoneRechargement').html(data); }, error: function(jqXHR, textStatus, errorThrown) { console.log("ERREUR C.1-Client"); } }); e.preventDefault(); //Prevent Default action. e.unbind(); }); //Submit the form </script> </head> <?php add_filter('wp_title', 'zero_modify_page_title', 20) ; //Le filtre wp_title... function zero_modify_page_title($title) { //...est appelé avec la fonction zero_modify_page_title... return $title . ' | Avec le plugin de Lucie !' ; } //...et modifie l'attribut <title> sur chaque page comme indiquer ci-avant. function test($x){ if($x==3){echo '<img src="' . get_bloginfo('template_directory') . '/img/comedia_logo.png" />';}else{echo "MANQUE DU LOGO DE COMEDIA STUDIO : ERREUR !";} } $adresseSiteLocale = "/wordpress2"; if(($_GET["post_type"] == "page" and $_SERVER["SCRIPT_NAME"] == $adresseSiteLocale ."/wp-admin/post-new.php") OR ($_SERVER["SCRIPT_NAME"] == $adresseSiteLocale ."/wp-admin/post.php" AND $_GET["post"] AND $_GET["action"]=="edit")){ add_action( 'admin_footer', 'form_image'); } function form_image() { echo "<style> .pluginLucie{ width: 45%; display: block; clear: both; float: left; margin-top: auto; margin-left: 25%; margin-bottom: 5%; text-align: center; } </style>"; echo '<div id=\'zoneRechargement\'><div class=\'pluginLucie\'><strong>Veuillez choisir ci-après un fichier à enregistrer !</strong>'; echo '<form name="multiform" id="multiform" action="#" method="POST" enctype="multipart/form-data">'; echo '<br/><br/> <input type="hidden" name="MAX_FILE_SIZE" value="250000"> <input type="file" name="imageLucie"/> <input type="submit" name="upload" value="Ajouter" id="chercher"> </form></div></div>'; $bdd = "wordpress2"; /* Base de données */ $host= "localhost"; /* Hote (localhost en principe) */ $user= "root"; /* Utilisateur */ $pass= ""; /* Mot de passe */ /* Connexion bdd */ @mysql_connect($host,$user,$pass) or die("Impossible de se connecter à la base de données"); @mysql_select_db($bdd); if(!empty($_FILES)) { $img_name = $_FILES['imageLucie']['name']; $img_extension = strrchr($img_name, "."); $extensions_autorisees = array('.png', '.PNG'); $img_tmp_name = $_FILES['imageLucie']['tmp_name']; $destination="../wp-content/uploads/lucie/"; if(file_exists($destination)) { if(file_exists($destination . $img_name)) { "Le fichier existe déjà !"; } } else{ mkdir($destination, 0777, true); } if(in_array($img_extension, $extensions_autorisees)) { if(move_uploaded_file($img_tmp_name, $destination.$img_name)){ $sql = "INSERT INTO filesLucie(id, nameFile, urlFile) VALUES('','$img_name','$destination$img_name')"; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); echo '<div class=\'pluginLucie\'>Fichier envoyé avec succès !</div>'; } else{ echo '<div class=\'pluginLucie\'>Une erreur est survenue lors de l\'envoi du fichier.</div>'; } } else{ echo '<div class=\'pluginLucie\'>Une erreur est survenue lors de l\'envoi du fichier.</div>'; } } } ?>