Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème utilisation de window.parent pour retourner info

Sujet résolu
    23 août 2011 à 16:58:20

    Bonjour,

    j'ai créé un script qui upload une image sur un serveur via un script envoyé en javascript vers une page php en popup, maintenant je souhaiterais retourner le path de l'image sauvegarder dans la fenêtre principale mais FireFox me dit que la fonction en question n'est pas une fonction:

    la page principal:

    function	addPathImg()
    {
    alert("test");
    }
    
    
    function upload_image(id)
    {
    	if (!id)
    		id = 'uploadfilebox';
    	var el = $(id);
    	var form = document.createElement("form");
    	
    	form.target = "ma_popup";
    	form.setAttribute("action", "upload_image.php");
    	form.setAttribute("method", "post");
    	form.setAttribute("onSubmit", "window.open('', 'ma_popup', 'width=800, height=800, left=800, scrollbars=yes'); this.submit();");
    	form.setAttribute("enctype", "multipart/form-data");
    	
    	var input = document.createElement("input");
    	input.setAttribute("name", "image");
    	input.type = "file";
    	
    	var submit = document.createElement("input");
    	submit.type = "submit"
    	submit.value = "Envoyer";
    	
    	form.appendChild(input);
    	form.appendChild(submit);
    	
    	el.appendChild(form);
    }
    


    la popup

    <!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" >
       <head>
           <title>Upload Image</title>
           <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
       </head>
    <body>
    <?php
    
    define("PATH_IMAGE", "./upload/img");
    
    function	create_folder()
    {
    	$path = PATH_IMAGE . "/" . date("Y") . "/" . date("m") . "/" . date("d");
    	if (is_dir($path) === false)
    		{
    			if (mkdir($path, 0700, true) === true)
    				return ($path);
    			else
    				return (false);
    		}
    	return ($path);
    }
    
    
    function	upload_image($img_tmp_name, $img_name)
    {
    	if (($folder_path = create_folder()) !== false)
    		{
    			$img_path = $folder_path . "/" . $img_name;
    			if (move_uploaded_file($img_tmp_name, $img_path) !== false)
    				{
    					echo "<br /> Image sauvegarder avec succès.<br />";
    					echo "<img src=\"" . $img_path . "\" alt=\"" . $img_name . "\" />";
    					echo "<script type=\"text/javascript\">window.parent.addPathImg();</script>";
    					echo "<form><input type=\"button\" value=\"Fermer la fenêtre\" onclick=\"window.close()\"></form>";
    				}
    			else
    				echo "<br /> Erreur: Impossible de sauvegarder l'image, veuillez rééssayer ultérieurement.<br />";
    		}
    	else
    		echo "<br /> Erreur: Impossible de créé le dossier pour sauvegarder l'image<br />";
    }
    
    
    if (isset($_FILES['image']) && $_FILES['image']['error'] == 0)
    	{
    		$infosfichier = pathinfo($_FILES['image']['name']);
            $extension_upload = $infosfichier['extension'];
            $extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png');
            if (in_array($extension_upload, $extensions_autorisees))
    			upload_image($_FILES['image']['tmp_name'], $_FILES['image']['name']);
    		else
    			echo "<br /> Erreur: le format de l'image est invalid, les formats acceptés sont: jpg, jpeg, gif, png.<br />";
    
    	}
    else
    	echo "<br /> Erreur: L'upload de l'image a échoué, veuillez rééssayer. <br />";
    ?>
    </body>
    </html>
    


    la popup a comme message d'erreur:

    Citation : FireFox

    window.parent.addPathImg is not a function
    <br /> Image sauvegarder avec succès.<...lick="window.close()"></form></body>



    et la fenêtre principal à aussi un message d'erreur:

    Citation : FireFox

    window.parent.addPathImg is not a function
    Échec du chargement de la source pour:...://localhost/flyspray/upload_image.php



    Merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      23 août 2011 à 17:55:22

      Ce serait pas plutôt window.opener ?
      • Partager sur Facebook
      • Partager sur Twitter
        23 août 2011 à 18:06:46

        Exacte c'était window.opener, merci pour ton aide.
        • Partager sur Facebook
        • Partager sur Twitter

        Problème utilisation de window.parent pour retourner info

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown