Recuperation d'un resultat par un autre site ?

Résolu
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007
- 16 avril 2006 à 13:32
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
- 18 avril 2006 à 19:49
Bonjour à tous, c'est encore moi !

J'aimerais proposer un service sur mon site, qui consisterais à afficher une citation aleatoirement sur un autre site, au niveau du code PHP/MySQL pour choisir une citation il n'y a pas de probleme je devrais y arriver, par contre comment creer un lien vers ce resultat et l'inserer sur n'importe quelle page web pour qu'il s'affiche, je pense à du Javascript mais si vous pouviez m'aiguiller.....

si quelqu'un a une idée.....? merci ;)

"La vie, c'est pour la vie..."
http://proverbe.intoxmatique.com

24 réponses

coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
41
17 avril 2006 à 16:11
Salut,

.... faut que ton fichier newsletter.php renvoi un fichier javascript et non une image...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
3
coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
41
17 avril 2006 à 17:33
Salut,

<?php
echo 'document.write("$tout_mon_code")';
?>"

euh no... là, t'as parse error....

<?php
echo 'document.write("'.str_replace('"','\"',$tout_mon_code).'")';
?>
In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
3
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
18 avril 2006 à 12:24
<?php
$code='<li>test affichage</li><li>test 2</li>';

echo 'document.write("',str_replace('"','\"',$code,'"))';
?>

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
3
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
16 avril 2006 à 14:14
Salut,

effectivement c'est le cas le plus simple, surtout si le site en question est un site html, l'avantage du javascript est qu'il conviendra pour tous les sites, l'inconvénient est que ça rajoute du code inutilement qui peut en plus être désactivé, alors qu'un site en PHP pourra avoir sa propre solution de parsing.

Bref tu peux proposer les deux solutions.

Une en javascript, les gens inséreront par exemple :

<script type="text/javascript" src="http://www.tonsite.com/citation.php"></script>

dans ton fichier citation.php tu fais des document.write (que tu affiches via un echo) pour permettre au javascript d'afficher ta citation.

exemple :

<?php
echo 'document.write("test")';
?>

et quand les gens mettront le js sur leur site, ça leur affichera "test"

ensuite tu fais une deuxième version pour les sites dynamiques, dans ce cas tu renvoies par exemple "test" sans rien autour, le site en question sera chargé du parsing.

a +

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
41
16 avril 2006 à 19:14
Salut,

faut aussi faire attention aux types de fichiers produits, et aux charset...



header('Content-type: text/javascript; charset=UTF-8');



et encode tout avec utf8_encode() ça te permet de ne pas avoir de problèmes

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
41
16 avril 2006 à 19:14
Salut,

faut aussi faire attention aux types de fichiers produits, et aux charset...



header('Content-type: text/javascript; charset=UTF-8');



et encode tout avec utf8_encode() ça te permet de ne pas avoir de problèmes

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
WhiteDwarf
Messages postés
510
Date d'inscription
samedi 29 décembre 2001
Statut
Membre
Dernière intervention
23 mai 2008

16 avril 2006 à 22:02
Y'a pas des problèmes au niveau des accents avec l'utf-8 ? Mon site est encodé la dessous (y'a du Russe) mais les pages francaises je les ai laissé en iso car les accents passaient pas


----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
0
coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
41
17 avril 2006 à 10:32
Salut,
utf8_encode($data);

t'affichera ça corectement...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

17 avril 2006 à 15:47
En fait j'ai essayer mais ca ne marche pas...

J'ai donc créé une page php contenant mon 'module' de citation aleatoire
http://copieurs.jexiste.fr/intoxitation/newsletter.php

sur ma page d'accueil je l'affiche simplement avec un <?php include('newsletter.php'); ?>
http://proverbe.intoxmatique.com
,jusque là pas de probleme ! (enfin si : quand je rafraichie, toute la page se rafraichie, j'aurais aimé qu'il n'y ai que le bloc 'citation aleatoire' alors j'ai penser au iframe mais le probleme c'est qu'il faut definir la taille alors que mon bloc à une taille variable selon la citation afficher !!!, enfin bref ca c'est un autre probleme.)

j'imagine que le :
<script type="text/javascript" src=http://copieurs.jexiste.fr/intoxitation/newsletter.php></script>
ne fonctionne pas puisque ma page est en php ?

y'aurais t'il un autre code pour afficher les pages php ?

je poste mon code au cas où ( page : newsletter.php ) :

<?php
include('connect.php');
/////////////////////////////////
// affichage aléatoire de citation ////
//////////////////////////////////
$req = mysql_query("select proverbe,auteur from Proverbe order by rand() limit 1");
$champ_citation = mysql_result($req,0,"proverbe");
$champ_auteur = mysql_result($req,0,"auteur");


echo "<table width='200' border='0' cellpadding='5' cellspacing='0'>
----, &nbsp;&nbsp;&nbsp;CITATION&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>

\"";
echo $champ_citation;
echo "\", \";
echo \"<td align='center' background='images/fond_bleu_newsletter.jpg' style='font-color:#000000;font-size:8pt;font-weight:bold;font-style:italic;font-family:Arial;'>\";
echo \"Auteur : (\",$champ_auteur,\")\";
echo "
</td></tr></table>";
mysql_close();
?>

merci à tous.
0
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
17 avril 2006 à 15:48
"<script type= "text/javascript" src=http://copieurs.jexiste.fr/intoxitation/newsletter.php></script>
ne fonctionne pas puisque ma page est en php ?"

c'est <script type="text/javascript" src= " http://copieurs.jexiste.fr/intoxitation/newsletter.php"></script>

et si ça fonctionnera.
<hr size ="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

17 avril 2006 à 15:49
désolé, j'ai tout casser le design avec mon post !!!
0
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
17 avril 2006 à 15:54
Pas grave, les admins de CS sont au courant depuis belle lurette concernant ça :)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

17 avril 2006 à 16:07
Bein ecoute je voudrais pas insister mais j'ai ecris :

<script type="text/javascript" src="http://copieurs.jexiste.fr/intoxitation/newsletter.php"></script>

et promis ca ne marche pas, il n'y a rien qui s'affiche.
par contre le lien est bon puisque tu verras le resultat en copiant/collant dans le navigateur. ?
0
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
17 avril 2006 à 16:47
Ah oui en effet...

Qu'est-ce qu'on disait plus haut ?

"exemple :

<?php
echo 'document.write("test")';
?>"

en ce qui me concerne... on a jamais parlé d'image...
<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

17 avril 2006 à 16:56
a d'accord, il faut que je trouve un moyen d'inclure tout mon code dans
<?php
echo 'document.write("$tout_mon_code")';
?>"

ca va etre chaud ça ! bon je reflechi à tout ca et je vous tiens au courant.
je validerais la reponse quand j'aurais tout compris ;)
0
WhiteDwarf
Messages postés
510
Date d'inscription
samedi 29 décembre 2001
Statut
Membre
Dernière intervention
23 mai 2008

18 avril 2006 à 00:21
Un petit conseil en passant :

après avoir regardé le code de http://copieurs.jexiste.fr/intoxitation/newsletter.php,
évite de mettre des balises <html> et autres types <head> dans le fichier qui sera en inclusion,
car la page qui va appeler ce fichier aura surement déja ces balises.
C'est pour aviter de faire du code trop sale et surtout éviter les problèmes d'incompatibilité :)


----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

18 avril 2006 à 12:19
re-salut à tous et merci de votre aide, je suis désolé mais j'ai du loupé un wagon là!
pour faire un test simple j'ai fait ça :
je crée une page nommé test.php dans laquelle je met ça :

<?php
$code="test affichage";
?>
<?php
echo 'document.write("'.str_replace('"','\"',$code).'")';
?>

Je crée un deuxieme fichier par exemple affiche.html :

<html>
<head></head>

</script>"

</html>

quand je lance le fichier affiche.html j'ai une page blanche qui s'affiche !
Je precise que je fais mes tests en local (avec Xaas) et que mes liens sont bons.
à mon avis ce n'est pas comme ca que cette commande fonctionne j'ai du louper un passage.....

Si vous avez 5mn à me consacrer merci. (ou un lien car je n'ai pas encore trouvé de sujet
sur mon probleme, pourtant il doit bien y en avoir!)
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

18 avril 2006 à 12:34
désolé ce code me donne :
Parse error: parse error, unexpected ';' in W:\www\test.php on line 4

ne prennez pas en compte mon <iframe= dans mon precedent post, j'étais bourré
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

18 avril 2006 à 12:38
non c bon il y avait une virgule en trop :
echo 'document.write("'.str_replace('"','\"',$code).'")';

je continue mes test avec ca et je vous rappelle, merci
0
elidris
Messages postés
125
Date d'inscription
lundi 15 août 2005
Statut
Membre
Dernière intervention
9 octobre 2007

18 avril 2006 à 13:20
ça marche d'enfer

<?php
include('intoxitation/connect.php');


$req = mysql_query("select proverbe,auteur from Proverbe order by rand() limit 1");
$champ_citation = mysql_result($req,0,"proverbe");
$champ_auteur = mysql_result($req,0,"auteur");

mysql_close();
?>
<?
echo 'document.write("<li>'.str_replace('"','\"',$champ_citation).'

<li>('.str_replace('"','\"',$champ_auteur).')
")';
?>

Par contre existe t'il un moyen d'inserer du code genre:
<table width="204" border="1" bordercolor="#C2D5FF" cellpadding="0" cellspacing="1">

car j'ai des erreurs de parse si je met des """"""""
0