comment soumettre un formulaire sur une autre page dans wordpress plugin
Je développe un plugin wordpress , qui présente une forme à une autre page. Mais lorsque j'essaie d'envoyer le formulaire à une autre page , alors que les retours de page certains d'erreur php. Mon code du formulaire est ci-dessous
echo "<form action='".plugins_url()."/wp_voting_poll/frontend_poll_process.php' method='post'>";
echo "<input type='hidden' name='hide' value='$ques' />";
$total_vote_count = $wpdb->get_var( "SELECT COUNT(*) FROM $table_result WHERE question_uid='$ques'" );
if($ques!=""){
echo "<table>";
foreach($ans_data as $ans_res){
// $ans=$ans_res->answer;
$answer_id=$ans_res->id;
$type=$ans_res->answer_type;
$vote_count = $wpdb->get_var( "SELECT COUNT(*) FROM $table_result WHERE answer_id='$answer_id'" );
if($vote_count==0){
error_reporting(0);
}
$vote_percent=($vote_count*100)/$total_vote_count;
echo "<tr> <td>";
echo "<div class='answer_div'>";
if($type==1){
echo "<div class='input'><input type='radio' name='ans_name[]' value='$answer_id'/>".$ans_res->answer."<br/></div>";
}
elseif($type==0){
echo "<div class='input'><input type='checkbox' name='ans_name[]' value='$answer_id'/>".$ans_res->answer."<br/></div>";
}
if($backend==0){
echo "</td> <td>";
echo "<h4> total vote counted $vote_percent% </h4>";
//echo "<img src='$url' width='$width_img'/>";
$bar=$vote_percent*5.9;
echo "<img src='$url' height='10' width='$bar' />";
echo "</td></tr>";
}
}
echo "</table>";
echo "<input type='submit' value='Submit vote' />";
echo "</form>";
Et c'est mon code d'une autre page , qui devrait traiter le formulaire . Mais malheureusement, il retourne erreur php.
<?php
require_once("function_ip.php");
$vote_result=$_POST['ans_name'];
$uid=uniqid();
global $wpdb;
$table_vote=$wpdb->prefix."poll_answer_result";
$count=count($vote_result);
$hidden=$_POST['hide'];
$ans_data=$wpdb->get_results("SELECT * FROM $table_vote WHERE question_id='$hidden'" );
if($count>0){
foreach($vote_result as $vote_arr){
$wpdb->insert($table_vote,
array('answer_id' => $vote_arr,
'ip' =>get_client_ip(),
'question_uid' => $hidden
));
}
}
?>
Afficher les erreurs PHP. Activer le débogage dans wp-config et l'affichage de ces erreurs. Aussi coller les erreurs de votre php fichier journal des erreurs
Je reçois une erreur lorsque j'ai soumis la forme, de l'Avis: Essayer d'obtenir la propriété de non-objet dans C:\wamp\www\wordpress_plugin\wp-content\plugins\wp_voting_poll\frontend_poll_process.php sur la ligne 7 erreur Fatale: Appel d'une fonction membre get_results() sur un non-objet dans C:\wamp\www\wordpress_plugin\wp-content\plugins\wp_voting_poll\frontend_poll_process.php sur la ligne 11
Contacter le développeur du plugin
Je reçois une erreur lorsque j'ai soumis la forme, de l'Avis: Essayer d'obtenir la propriété de non-objet dans C:\wamp\www\wordpress_plugin\wp-content\plugins\wp_voting_poll\frontend_poll_process.php sur la ligne 7 erreur Fatale: Appel d'une fonction membre get_results() sur un non-objet dans C:\wamp\www\wordpress_plugin\wp-content\plugins\wp_voting_poll\frontend_poll_process.php sur la ligne 11
Contacter le développeur du plugin
OriginalL'auteur Mushfiqul Tuhin | 2013-11-15
Vous devez vous connecter pour publier un commentaire.
WordPress a un générique de gestionnaire à toutes les formes -
admin-post.php
.Si vous incluez un champ caché dans le formulaire appelé
action
, vous pouvez ensuite le crochet à une fonction de votre choix avec tous les avantages de wordpress inclus.Et puis dans votre
functions.php
fichier (ou tout autrephp
fichier que vous avez inclus viafunctions.php
), vous pouvez utiliser cette méthode.Je ne suis pas sûr si vous avez besoin d'une redirection une fois que vous atteignez votre destination souhaitée, mais qui peut facilement être comptabilisée si vous n'.
Et une dernière question - est-ce formulaire sur le front-end, ou dans la zone d'admin? Non pas qu'il devrait faire une différence que cette réponse, je suis juste curieux...
Vous êtes les bienvenus. C'est cool à propos de l'extrémité avant. Je suis juste curieux, comme si il était dans la zone d'admin, il y a certains morceaux que vous pourriez faire de l'envoi de formulaires encore plus facile.
OriginalL'auteur David Gard
Votre
frontend_poll_process.php
page appelés à sortir de l'WordPress environnement, donc de retourner une erreur sur$wpdb->get_results()
.Vous pouvez ajouter votre code d'un plugin ou
functions.php
à l'aide de crochets:mise à jour de la réponse
vous avez utilisé "after_setup_theme" dans add_action. Mais ce n'est pas un thème .Ses un plugin. Je veux faire, c'est que, quand je vais activer le plugin de cette fonction (so_19997913) tourne sous wp environnement.
il n'a pas d'importance. J'ai collé à partir d'un code que j'ai utilisé qui était dans un plugin.
Je vais avoir le même problème pourtant Fatal error: Call to undefined fonction add_action() dans C:\wamp\www\wordpress_plugin\wp-content\plugins\wp_voting_poll\frontend_poll_process.php sur la ligne 4 Et je pense que c'est pour la même raison. add_action est à l'extérieur de wp environnement. Mais ne sais pas la solution 🙁
OriginalL'auteur RRikesh