J'ai un formulaire de soumission avec la méthode POST, je veux écrire un script qui peut soumettre automatiquement ce formulaire, la raison pour laquelle j'en ai besoin est à des fins de test. J'ai besoin de beaucoup de données en peu de temps pour tester une recherche basée sur ces champs de formulaire, et je n'ai pas le temps de le faire manuellement. Est-ce possible?Soumission d'un formulaire en utilisant PHP
Répondre
Vous pouvez utiliser curl pour simuler un envoi de formulaire.
// create a new cURL resource
$ch = curl_init();
// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/script.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, true); //enable POST method
// prepare POST data
$post_data = array('name1' => 'value1', 'name2' => 'value2', 'name3' => 'value3');
// pass the POST data
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
// grab URL and pass it to the browser
curl_exec($ch);
// close cURL resource, and free up system resources
curl_close($ch);
Laissez PHP remplir le formulaire avec des données et imprimez un Javascript qui affiche le formulaire, PHP ne peut pas le poster sur votre propre.
Pourquoi le vote à la baisse? Il demande explicitement un script pour _post a form_, que PHP ne peut pas accomplir. –
Tout downvoting est probablement dû au fait que vous avez dit PHP ne peut pas faire ce que l'utilisateur demandait, mais il a des bibliothèques qui peuvent accomplir ce qui a été demandé, comme d'autres réponses l'ont souligné. Je suggère que si vous ne voulez pas de downvotes, modifiez votre réponse en quelque sorte ou supprimez-la. – PTBNL
Eh bien, non. Je me fiche de savoir si j'aurais des downvotes si je devais me tromper, mais ce que font les bibliothèques PHP (comme Snoopy) consiste simplement à publier des données avec POST dans un document PHP spécifié. Ce n'est pas la même chose que de poster un formulaire ... Comme je l'ai compris, sa question initiale était de soumettre un formulaire HTML, et non simplement de publier des données sur une page. –
Vous pouvez utiliser php.net/curl pour envoyer des requêtes POST avec PHP.
si vous n'êtes pas à l'aise avec boucle, vous pouvez utiliser une bibliothèque php appelé snoopy qui simule un navigateur Web. Il automatise la tâche de récupération du contenu de la page Web et des formulaires de publication.
<?php
/* load the snoopy class and initialize the object */
require('../includes/Snoopy.class.php');
$snoopy = new Snoopy();
/* set some values */
$p_data['color'] = 'Red';
$p_data['fruit'] = 'apple';
$snoopy->cookies['vegetable'] = 'carrot';
$snoopy->cookies['something'] = 'value';
/* submit the data and get the result */
$snoopy->submit('http://phpstarter.net/samples/118/data_dump.php', $p_data);
/* output the results */
echo '<pre>' . htmlspecialchars($snoopy->results) . '</pre>';
?>
Probablement la meilleure solution, une fois pas tous les serveurs Web prennent en charge CURL. Merci pour le conseil. –
- 1. Soumission d'un formulaire en utilisant PHP et AJAX via jQuery
- 2. Twitter comme formulaire de soumission en utilisant Ajax ou Jquery
- 3. PHP: Problème de soumission de formulaire en AJAX/JSON?
- 4. erreur de soumission de formulaire php
- 5. Comment puis-je gérer un formulaire de soumission en utilisant REAL OOP en PHP
- 6. Soumission de formulaire PDF
- 7. Soumission de formulaire AJAX en utilisant ExtJS et ASP.NET MVC
- 8. Soumission de formulaire dynamique en utilisant javascript - comment code élégant?
- 9. Comment activer la soumission de formulaire en utilisant l'événement onchange?
- 10. soumission de formulaire et hyperliens en utilisant GET et POST
- 11. Soumettre le formulaire en PHP en utilisant la touche Entrée
- 12. soumission du formulaire jquery
- 13. formulaire de soumission dans thickbox
- 14. Soumission automatique d'un formulaire
- 15. Soumission de formulaire dynamique jQuery
- 16. Avis requis - Soumission d'un formulaire de soumission avec curl?
- 17. Soumission de formulaire lent
- 18. Soumission automatique du formulaire
- 19. Formulaire de soumission anonyme
- 20. JQuery - Soumission de formulaire
- 21. Soumission de formulaire en double au printemps
- 22. Soumission d'un formulaire plusieurs fois
- 23. Coldfusion Ajax - Soumission de formulaire
- 24. Annuler la soumission du formulaire
- 25. Soumission de formulaire de soumission à iframe avec jQuery
- 26. Flash + PHP pour faire un formulaire de soumission?
- 27. Formulaire html utilisant une entrée comme un bouton de soumission
- 28. Prévention des erreurs PHP après la soumission de formulaire HTML
- 29. Drupal 6 AHAH/AJAX Formulaire de soumission
- 30. Formulaire de soumission de problème en utilisant JavaScript dans Internet Explorer 6
Vous avez défini curl_setopt ($ ch, CURLOPT_POST, true); deux fois. – luiscubal