Extraire sequence d'une url et la renvoyer dans un lecteur Iframe

JDA
Invité n'ayant pas de compte PHPfrance

12 juin 2015, 15:53

Bonjour,

Sans aucune compétence en Codage et PHP, je cherche le code (fonctionnant sous wordpress) permettant d'extraire une sequence de chiffre d'une Url (dont le nombre peut varier video123, ou video123456789, max 9 chiffre mais peut être moins) et de la renvoyer dans un lecteur « iframe » suivant :

<iframe src="http://flashservice.xvideos.com/embedframe/8022140" frameborder=0 width=510 height=400 scrolling=no></iframe>

la séquence de chiffre provient de l'url de la page : http://www.xvideos.com/video8022140/bus ... #_tabEmbed

Le code doit créer un champs de saisie de l'url, un bouton GO puis permettre l'extraction uniquement de la sequence de chiffre de l'Url et la renvoyer dans le code « iframe » ci dessus pour actualiser le contenu. Si il existe aussi un code (type poster="http://...) a insérer dans le code iframe permettant au lecteur Iframe ci dessus d'afficher une image téléchargée sur wordpress avant l'appui sur le bouton GO, ce serait top.

Pour l'instant avec mes faible compétences j'en suis là :
Je crée la forme et le bouton Go ;
Je bidouille du php pour attraper les chiffres après le mot « video » figurant dans l'url ;
Je puzzle du php pour tenter de renvoyer les chiffres dans le code du lecteur Iframe :


<form method=get>

<input type=text name="url" size=50 value="PASTE SITE URL"><input type=submit name="submit" value="Go">
</form>

<br/>

<?php

if (isset($_GET['submit']))

{

$url = $_GET['url3'];
preg_match('/video([0-9]+)/', $url, $results, PREG_OFFSET_CAPTURE);
echo ': url='.$_GET['url3'].'<br/>';
echo ' : valeur='.$results[1][0].'<br/>';
echo '<iframe src="http://flashservice.xvideos.com/embedfr ... sults[1][0].'" frameborder=0 width=510 height=400 scrolling=no></iframe><br/>';

}


?>

Mais cela ne fonctionne pas. Est ce q'une bonne âme pourrait me corriger ?

Best regards,

JDA

Mammouth du PHP | 688 Messages

12 juin 2015, 15:58

que ce passe-t-il exactement une fois le formulaire validé ?

echo "avant";
if (isset($_GET['submit'])){
echo "apres";

qu'est-ce que cela affiche ?

JDA
Invité n'ayant pas de compte PHPfrance

12 juin 2015, 16:07

Bonjour Tof, Merci pour ta gentillesse et rapidité de réponse. A la validation "GO" le lecteur iframe doit jouer la video principale figurant a l'adresse de l'url comme si l'utilisateur avait coller L'iframe dédié (embed) avec la sequence de chiffre adéquate (celle figurant dans l'Url).

Si tu pense que l'erreur provient des Echos, pourrais tu s'il te plait, coller mon code corrigé de tes échos car les ", ',. ; < > n'ont l'air de rien mais me posent beaucoup de problèmes ;-)

Comme cela je peut a mon tour copier coller dans WP pour voir si fonctionne !

Bien à toi,

JDA

JDA
Invité n'ayant pas de compte PHPfrance

12 juin 2015, 16:20

Le code a été construit par puzzle de solution trouvées ci et là.
Je ne comprends pas les termes techniques et le langage Php,
C'est pourquoi j'ai grandement besoin d'un expert :D

JDA
Invité n'ayant pas de compte PHPfrance

15 juin 2015, 22:18

Bonsoir à Tous,

Je n'ai toujours pas réussi à écrire le code #-o

Existe t'il des gentils membres pour m'aider via ce forum d'entraide PHP France?

tof73, Mammouth du PHP, pourriez vous m'aider à pour le code ?

Cordialement,

Petit nouveau ! | 3 Messages

16 juin 2015, 10:16

Bonjour JDA, je te conseil de suivre une formation en PHP c'est assez compliqué donc le mieux c'est d'avoir au moins un minimum de connaissance
Bon courage

JDA
Invité n'ayant pas de compte PHPfrance

16 juin 2015, 23:15

Bonjour Mick012,

Merci pour ta réponse =D> ,

Un gentil utilisateur de ce site d'entraide avec de l’expérience pourrait il m'aider a trouver la petite erreur dans mon code?

Cordialement,

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

17 juin 2015, 00:26

Modération :
Afin d'obtenir plus de réponses, le sujet a été déplacé dans une catégorie plus appropriée (Javascript > PHP débutant).
Quand tout le reste a échoué, lisez le mode d'emploi...

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

17 juin 2015, 09:19

Bonjour,

"Ca ne fonctionne pas" ne nous aide pas vraiment pour comprendre ce que ton code dois faire et fait en réalité :) Ceci étant, je pense que ton problème vient de la récupération de la valeur passée dans le formulaire : $url = $_GET['url3'];

En effet, le nom du champ dans lequel l'utilisateur rentre son url n'est pas "url3" mais "url" (sans le 3) : name="url"

En remplaçant donc tes "url3" par "url", tu devrais te rapprocher de ce que tu attends :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

JDA
Invité n'ayant pas de compte PHPfrance

18 juin 2015, 08:34

Bonjour Ryle, Merci beaucoup pour ta gentille réponse pour solutionner ce petit bout de code :wink:

Suite a ta remarque changer url3 en url (merci encore) mon code devient :

<form method=get>
<input type=text name="url" size=75 value="Paste URL">
<br/>
<input type=submit name="submit" value="PLAY">
</form>

<br/>

<?php


if (isset($_GET['submit']))

{

$url = $_GET['url'];
preg_match('/video([0-9]+)/', $url, $results, PREG_OFFSET_CAPTURE);
echo 'url='.$_GET['url'].'<br/>';
echo 'valeur='.$results[1][0].'<br/>';


echo '<iframe src="http://flashservice.xvideos.com/embedfr ... sults[1][0].'" frameborder=0 width=510 height=400 scrolling=no></iframe><br/>';

}


?>

Malheureusement le code ne fonctionne toujours pas :
- le champs de saisie et le bouton sont sur la page mais la partie de code de la ligne IF (isset etc." à la ligne echo 'valeur='.$results[1][0].'<br/>'; s'affiche directement dans la page juste sous le bouton. :?:
-"Sorry but the page you requested was not found" est affiché sous le code visible (avant même la saisie d'une URL dans le champs).
- Aprés collage d'une url et l'appui sur le bouton play, le lecteur Iframe ne s'affiche pas, je suis directement renvoyer sur ma page d’accueil avec l'URL suivant http://WWW.SITE.COM/?url=http%3A%2F%2Fw ... ubmit=PLAY

Je me demande s'il est techniquement possible de changer une variable dans le code d'un lecteur Iframe via PHP #-o

Peut être qu'a la vue de ces informations complémentaires tu as une solution.

Merci encore pour ton temps :D

Mammouth du PHP | 688 Messages

18 juin 2015, 13:32

tu remplaces
if (isset($_GET['submit'])){

par

echo "avant";
if (isset($_GET['submit'])){
echo "apres";

et tu vas te rendre compte que cela n'affiche ni l'un ni l'autre.
à cause de cette ligne :
<form method=get>
qui est incomplète si ce n'est pas la home qui fait le traitement.

JDA
Invité n'ayant pas de compte PHPfrance

19 juin 2015, 19:38

Bonjour Tof 73,

suite a tes remarques (merci !) le code devient :

<form method=get>
<input type=text name="url" size=75 value="Paste URL">
<br/>
<input type=submit name="submit" value="PLAY">
</form>

<br/>
<br/>

<?php

echo ;
if (isset($_GET['submit']))

{
echo ;

$url = $_GET['url'];
preg_match('/video([0-9]+)/', $url, $results, PREG_OFFSET_CAPTURE);
echo 'url='.$_GET['url'].'<br/>';
echo 'valeur='.$results[1][0].'<br/>';

echo '<iframe src="http://flashservice.xvideos.com/embedfr ... sults[1][0].'" frameborder=0 width=510 height=400 scrolling=no></iframe><br/>';

}


?>

Grâce aux "échos" je ne suis plus redirigé vers la page d’accueil, mais :
-la partie de code de la ligne Echo; IF (isset etc." à la ligne echo 'valeur='.$results[1][0].'<br/>'; (tout le code en fait ) s'affiche directement dans la page juste sous le bouton. :?:
-"Sorry but the page you requested was not found" est affiché sous le code visible (avant même la saisie d'une URL dans le champs).
- Aprés collage d'une url et l'appui sur le bouton play, le lecteur Iframe ne s'affiche pas, je reste sur la bonne page (plus de redirection vers Home) mais il ne se passe rien le message d'erreur toujours présent et l'Url est http://WWW.SITE.COM/PROJECT/?url=http%3 ... ubmit=PLAY.

Merci pour ton aide ! Pourquoi le code PHP s'affiche t'il au lieu de s’exécuter ?