begin process at 2012 05 31 13:52:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

récupérer url


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

récupérer url

mercredi 23 juin 2010 à 11:54:57 | récupérer url

anacolut

bonjour
je ne parviens pas à récupérer l'url de ma page courante
sur la page dont je souhaite récupérer l'url j'ai indiqué
[code]
<a href="javascript:void(0)" class="pagenext" onclick="window.open('form2.php?url=<?php selfURL(); ?>','formulaire','location=no,width=460px,height=560px')" title="Envoyer cette annonce par email">Envoyer</a>
<a href="javascript:void(0)" class="pagenext mail_print" onclick="window.open('form2.php?url=<?php selfURL(); ?>','formulaire','location=no,width=460px,height=560px')" title="Envoyer cette annonce par email">
<img align="middle" src="<?php echo URL_SITE; ?>images/email.png" width="24" height="35" alt="" /></a>

<?php function selfURL(){
$url = empty($_SERVER['HTTPS']) ? ''
: ($_SERVER['HTTP_HOST'] == 'on') ? 's'
: ''; $protocol = strleft(strtolower($_SERVER['SERVER_PROTOCOL']), '/').$url;
$port = ($_SERVER['SERVER_PORT'] == '80') ? ''
: (':'.$_SERVER['SERVER_PORT']);
return $protocol.'://'.$_SERVER['PHP_SELF'].$port.$_SERVER['REQUEST_URI'];
}
function strleft($s1, $s2){
return substr($s1, 0, strpos($s1, $s2));
}
[/code]

Puis ça ouvre un formulaire, tout fonctionne sauf que l'url de la page n'est pas récupérée.
voici le code du formulaire

Code PHP :
<?php

echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";

?>

<!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">

<head>

<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
body {
    background:#FEE3AE;
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}
.Style2 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #CC6600;
	font-weight: bold;
	font-size: 14px;
}
.Style3 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #CC6600;
	font-weight: bold;
	font-size: 10px;
}
-->
</style>
</head>

<body>
<?php
//if(isset($_GET['url']) and !empty($_GET['url']))
//{
   // $url=$_GET['url'];
if(isset($_POST['envoi']))

{


    $url      = isset($_POST['url']) and !empty($_POST['url']);

    $nom       = isset($_POST['nom'])    ? trim(htmlspecialchars($_POST['nom']))       : "";
	
	$dnom      = isset($_POST['dnom'])   ? trim(htmlspecialchars($_POST['dnom']))       : "";

    $email     = isset($_POST['email'])  ? trim(htmlspecialchars($_POST['email']))     : "";
	
	$objet	   = isset($_POST['objet'])  ? trim(htmlspecialchars($_POST['objet']))     : "";
	
	$message   = isset($_POST['message']) ? trim(htmlspecialchars($_POST['message']))   : "";
	




    /**

     * Définition des variables servant au traitement de l'adresse électronique et du numéro de

     * téléphone: on utilise ici des expressions régulières.

     */

    $valid = "#^[^-_\.][a-z0-9-_\.]+[^-_\.]@[^-_\.][a-z0-9-_\.]+[^-_\.]\.[a-z]{2,4}$#";
	
	if ($nom == '' || $email == '' || !(preg_match($valid, $email)))

    {
	?>
	<table width="430" height="530" border="0" cellpadding="0" bgcolor="#FEE3AE">
		<tr>
		<td align="right">
 <p class="Style3">Informations incomplètes <br/>

                                Un (ou plusieurs) champ(s) obligatoire(s)<br/>
								 n'a(ont) pas été correctement rempli(s).</p>
								 
	<?php
	
	if ($nom == '')

        {

            print "Vous n'avez pas précisé votre nom !<br/>\n";

        }
		
	if ($dnom == '')

        {

            print "Vous n'avez pas précisé le nom de votre destinataire !<br/>\n";

        }
		
	if($email == '')

        {

            print "Vous n'avez pas indiqué le mail de votre destinataire !<br/>\n";

        }
		
	if(($email) && !(preg_match($valid, $email))) 
	
		{

            print "le mail est invalide.<br/>\n";

        }
		
		?>
		
		<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post">

  <fieldset>

  <label><span class="Style2">Votre Nom : </span><span class="Style2">*</span> <input type="text" name="nom"  size="30" maxlength="60" class="cases" value="<?php echo $nom ?>" /></label><br />

  <label><span class="Style2">Nom du destinataire : </span><span class="Style2">*</span> <input type="text" name="dnom"  size="30" maxlength="60" class="cases" value="<?php echo $dnom ?>" /></label><br />

  <label><span class="Style2">Mail du destinataire : </span></span><span class="Style2">*</span> <input type="text" name="email"  size="30" maxlength="60" class="cases" value="<?php echo $email ?>" /></label><br />
  
  <label><span class="Style2">Objet : </span> <input type="text" name="objet"  size="30" maxlength="60" class="cases" value="<?php echo $objet ?>" /></label><br />

  <label><span class="Style2">Votre Message : </span> <textarea name="message" cols="50" rows="20"><?php echo $message ?></textarea></label><br />
  
  
  <input type="submit" class="verif" name="envoi" value="Envoyer" />&nbsp;
  <input type="hidden" name="url" value="<?php echo $url ?>" />
  <input type="reset" class="verif" value="Recommencer" />

  </fieldset>

</form>
</td>
</tr>
</table>
<?php
}
else

    {
	$to = $email;
    $subject = $objet.' de '.$nom.' - www.monsite.com';
    $from  = "From:moi@remoi.com\n";
    $from .= "MIME-version: 1.0\n";
    $from .= "Content-type: text/html; charset= iso-8859-1\n";
    $message='<style>*{font-family:verdana;font-size:11px;font-weight:bold;}</style><p>Bonjour '.$dnom.',</p><p>'.nl2br(stripslashes($message)).'</p><p><a href="'.$url.'" target="_blank">'.$url.'</a><p>Ce message vous a été envoyé depuis www.monsite.com</p>'; 
    if(mail($to,$subject,$message,$from)){ 
echo "Votre mail a bien été envoyé !"; }
        $href_email = str_replace("@", "%40", $email);

        // Affichage du message final des informations reçues

        print "<p class=\"Style3\">Merci ! Voici les informations que vous avez fournies</p>\n";
		
		print "<span class=\"Style3\">Votre Nom :</span> ". $nom ."<br/>\n";
		
		print "<span class=\"Style3\">Nom du destinataire :</span> ". $dnom ."<br/>\n";
		
		print "<span class=\"Style3\">le mail du destinataire :</span> <a href=\"mailto:". $prenom ."%20". $nom ."%20%3c". $href_email ."%3e\">".$email."</a><br/>\n";
		
		if ($objet)
		{
			print "<span class=\"Style3\">Objet :</span> ". $objet ."<br/>\n";
			
		}
		else
		{
		print " Pas d'objet.<br/>\n";
		}

        if ($message) // Si du texte a été saisi dans la boite textarea:
		{
		

            print "<span class=\"Style3\"> Votre message :</span> ".nl2br(stripslashes($message))."<br/>\n"; // Affichage du texte saisi dans la boite textarea après traitement de mise en page.

        }

        else /* Si aucun texte n'a été saisi, alors affichage d'un message alternatif. */

        {

            print " Pas de message.<br/>\n";

        }
		
		
        print("<p class=\"Style2\"> Retour vers le formulaire de base, cliquez <a href=\"". $_SERVER['PHP_SELF'] ."\" title=\"Retour vers le formulaire\">ICI</a></p>");
		
		print ("<a href=\"javascript:window.close();\" title=\"Fermer la fenêtre\" >Fermer la fenêtre</a>");

}	
}
//}	
else
{

?>
<table width="430" height="530" border="0" cellpadding="0" bgcolor="#FEE3AE">
		<tr>
		<td align="right">
<p class="Style2">Envoyer cette page <br/>

                  à un contact<br />
				les champs avec * sont obligatoires</p>
								
		<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post">

  <fieldset>

  <label><span class="Style2">Votre Nom : </span><span class="Style2">*</span> <input type="text" name="nom"  size="30" maxlength="60" class="cases" value="" /></label><br />

  <label><span class="Style2">Nom du destinataire : </span><span class="Style2">*</span> <input type="text" name="dnom" maxlength="60"  size="30" class="cases" value="" /></label><br />

  <label><span class="Style2">Mail du destinataire : </span><span class="Style2">*</span> <input type="text" name="email" maxlength="60"  size="30" class="cases" value="" /></label><br />
  
  <label><span class="Style2">Objet : </span> <input type="text" name="objet" size="30" maxlength="60" class="cases" value="" /></label><br />

  <label><span class="Style2">Votre Message : </span><textarea name="message" cols="50" rows="20"></textarea></label><br />
  
  
  <input type="submit" class="verif" name="envoi" value="Envoyer" />&nbsp;
  <input type="hidden" name="url" value="<?php echo $url ?>" />
  <input type="reset" class="verif" value="Recommencer" />

  </fieldset>

</form>
</td>
</tr>
</table>
<?php

}

?>
	
</body>
</html>


Merci d'avance
vendredi 25 juin 2010 à 19:11:00 | Re : récupérer url

tanyadiz

j'ai pas compris quelle URL souhaites tu récupérer? et qu'elle apparaisse où?
dimanche 27 juin 2010 à 21:01:26 | Re : récupérer url

anacolut

bonjour
j'ai une page qui s'appelle "details.php" c'est de celle-ci dont je veux récupérer l'url.
Quand un utilisateur arrive sur cette page (il s'agit d'une page concernant les détails et le descriptif d'un produit) il y a un lien "envoyer cette page à un ami" avec ce code et cette fonction :
Code PHP :
<a href="javascript:void(0)" class="pagenext" onclick="window.open('form2.php?url=<?php selfURL(); ?>','formulaire','location=no,width=460px,height=560px')" title="Envoyer cette annonce par email">Envoyer</a>
<a href="javascript:void(0)" class="pagenext mail_print" onclick="window.open('form2.php?url=<?php selfURL(); ?>','formulaire','location=no,width=460px,height=560px')" title="Envoyer cette annonce par email">
<img align="middle" src="<?php echo URL_SITE; ?>images/email.png" width="24" height="35" alt="" /></a>

<?php function selfURL(){
$url = empty($_SERVER['HTTPS']) ? ''
: ($_SERVER['HTTP_HOST'] == 'on') ? 's'
: ''; $protocol = strleft(strtolower($_SERVER['SERVER_PROTOCOL']), '/').$url;
$port = ($_SERVER['SERVER_PORT'] == '80') ? ''
: (':'.$_SERVER['SERVER_PORT']);
return $protocol.'://'.$_SERVER['PHP_SELF'].$port.$_SERVER['REQUEST_URI'];
}
function strleft($s1, $s2){
return substr($s1, 0, strpos($s1, $s2));
} 


Ensuite ça ouvre un formulaire qui s'intitule form2.php avec le code que j'ai indiqué. Tout fonctionne au niveau du formulaire, les sécu, les vérif, les récaps, ça envoie le mail mais pas l'url de la page détails.php
J'ai l'impression que ça vient de la fonction ou du code de la page détails.
Je ne sais pas si je suis clair
d'avance merci
vendredi 2 juillet 2010 à 14:41:14 | Re : récupérer url

Tonio_35

Hello, tu as une erreur, voici un indice :

Code PHP :
<?php
function toto(){
	return "Tata";
}
toto();
//
echo toto();
// Tata
?>


Cherche un peut dans ton code, si tu ne trouve pas :
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
<?php echo selfURL(); ?>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

_________________________________
Min iPomme


Cette discussion est classée dans : message, mail, email, print, destinataire


Répondre à ce message

Sujets en rapport avec ce message

mail() [ par soussan ] j'envoie des informations depuis un formulaire  flash vers une adresse email  et j'utilise le code suivant :le prob c que lorque les informations arri caracteres speciaux pour mail [ par tonydanza ] Bonjour a tous!J essaye de resoudre un petit probleme (banal)pour l envoie d un mail j ai besoin de connaitre comment on faitpour convertir les caract BAD HEADER Non-encoded 8-bit data [ par waterw72 ] Bonjour,J'essaye de faire un webmail  mais l'affichage des accents (dans le sujet) ne se passe pas correctement.Cela se produit quand j'envoie un mail valider un captcha [ par philclimb ] Bonjour;J'ai réaliser un formulaire de mail que je veux placer dans la page "contact" de mon site.Pour éviter les vilains spams j'ai placé un captcha, Fontion mail: destinataire cci et message html [ par taxitat ] Bonjour à tous,Comme bcp d'autres, j'ai un formulaire dont le code est plus bas. Je voudrais deux choses:* Au même temps qu'un email est envoyé au "cl Récup 2 données d'un formulaire --- à l'aide!!!!!! [ par ladafan ] Bonjour tout le monde,J'ai un gros probleme de recup de mes données sur un formulaire...Je voudrai qu'elles me soient envoyées sur mail...Voici la pag envoie d'un mail en Php - Javascript avec une seule page Php [ par elfigone81 ] Bonjour,Je voulais demander de l'aide pour le script suivant. En faite je voudrai envoyer un mail avec une seule page php contenant également un petit Probleme de code Php dans ma page lors de visualisation [ par brute ] Bonjour,J'ai un probleme sur une page, le code php apparait en dur lors de la visualisation de la page.Le texte suivant apparait :Votre email doit com Envoi d'email Multi Destinataire [ par R3dDragon ] Bonjour,J'ai une question, sa fait quelques jours que je programme mon nouveau site web, et là je tombe sur un problème, j'aimerais suite à formulaire Mail avec plusieurs destinataires [ par Anthotill ] Bonjour à tousJ'ai un petit soucis avec mon formulaire multi destinataire dans mon espace membre.En effet, malgré le fait que je choisisse deux (ou pl


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,030 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales