2009-11-05 7 views
0

après que le travail de code:javascript php-var obtenir

startSlideshow(<?php echo json_encode(glob("photos-animaux/*.jpg"))?>); 

qui ne avez pas de code:?

$.post("",{'folder':'animaux'}); 
startSlideshow(<?php echo json_encode(glob("photos-".$_GET["folder"]."/*.jpg"))?>); 

POURQUOI, ce que je fais mal, aider! pourquoi la fonction php stupide ne suffit pas de faire la chaîne droite !! ahhhh!

--- ---- infos nouvelles que le travail de la ligne:

startSlideshow(<?php echo json_encode(glob("photos-".$_GET["folder"]."/*.jpg")) ?>); 

parce que si je rentre dans la barre MANUELLEMENT d'adresse dossier = ... bam animaux?! Donc, le problème doit être là: $ .get ("photo-portfolio.php", {folder: "animaux"});

ne sais toujours pas où!

+0

Je ne comprends pas votre question. Qu'est-ce qui ne va pas? –

Répondre

2

Si vous utilisez $ .post() de JQuery, vous devez utiliser $ _POST ['folder'] pour accéder à votre variable. Si vous utilisez $ .get(), alors vous utilisez $ _GET ['folder'] en PHP. Essayez de changer ce $ _GET en $ _POST.

+0

je le change .... encore ne fonctionne pas, mais je pense que le problème est la partie jquery .... parce que quand manuellement entrer? Dossier = animaux .. cela fonctionne – menardmam

+0

Si? Dossier = animaux fonctionne, c'est une belle façon pour le faire. La notation préférée dans JQuery pour cela est $ .get ("", {'folder': 'animaux'}) – Travis

1

Modifier $_GET["folder"] à $_POST["folder"]?

Vous pouvez vider le $_POST pour être sûr que vous obtenez la bonne info ..

echo '<pre>', print_r($_POST, 1), '</pre>'; 
+0

essayez-le, faites du sens, ne travaillez pas! – menardmam

+0

Post Variable VIDE – menardmam

+0

Etes-vous sûr de poster sur le bon URI? Inspectez ceci dans Firebug et voyez où ça va. –

1

J'espère que vous n'êtes pas d'écrire littéralement ces deux lignes ensemble et espère qu'ils sont en interaction, êtes-vous?

$.post("",{'folder':'animaux'}); 
startSlideshow(<?php echo json_encode(glob("photos-".$_GET["folder"]."/*.jpg"))?>); 

PHP s'exécute sur le serveur, Javascript dans le navigateur. Dans les deux lignes ci-dessus, si écrit comme ceci, le PHP est déjà fait longtemps au moment où $.post() est appelé.

PHP traite le code sur le serveur et l'envoie au navigateur:

$.post("",{'folder':'animaux'}); 
startSlideshow(['something.jpg', 'something2.jpg']); 

Le navigateur exécute ce code:

  1. post {'folder':animaux'} à "" (aucun effet).
  2. Démarrez un diaporama avec ['something.jpg', 'something2.jpg'] (ce qui était déjà décidé au moment du chargement de la page).

J'espère que vous êtes au courant de ce processus en deux étapes.

+0

Donc, ce que vous m'expliquez est parfaitement logique, alors que la question me vient, comment puis-je exécuter une fonction javascript, qui envoie var à php en cours d'exécution? – menardmam

+0

Avez-vous vraiment besoin d'envoyer la variable à l'exécution? Est-ce basé sur une entrée de l'utilisateur? Ou tout pourrait-il être déjà préparé avant le chargement de la page? Si vous avez besoin de parler au serveur pendant l'exécution, vous devrez envoyer une requête AJAX au serveur qui répondra avec un objet JSON ou XML que vous pourrez utiliser dans votre Javascript. http://docs.jquery.com/Ajax http://en.wikipedia.org/wiki/Ajax_(programming) – deceze