Actuellement, je développe un système nécessitant une fonction de mise à jour. Le flux du système sera comme celui-ci:
1) Liste de la ligne de données dans Dashboard.php p>
2) L'utilisateur peut sélectionner l'une des données à afficher les détails. Il va rediriger vers View_Task.php P>
3) sur View_Task.php, l'utilisateur peut mettre à jour le nom de la tâche et cliquer sur le bouton "Enregistrer" pour enregistrer. P>
Le problème est. Après que je clique sur le bouton Enregistrer, il affichera l'erreur "Index index non défini: ID de rapport" et "Variable non définie: Task_Name à la ligne 55" p>
ci-dessous est mon code actuel: P>
vue_task.php p> up update_task_name.php p> Bien que obtenez l'erreur sur VIEW_TASK.PHP, mais les données avec succès Enregistrer! p> Peut-on savoir quelle est l'erreur? p> p>
3 Réponses :
Votre erreur est celle-ci ...
Accédez simplement à votre page avec un rapport valide_id p> Vous ne prouvez probablement pas l'identifiant dans l'URL, donc View_Task La requête elle-même ne fonctionne pas car il ne reçoit pas l'identifiant de l'URL pour obtenir la méthode. P> P>
Maintenant tu sais où est le problème
Je pense que ce n'est pas la bonne réponse. Je n'ai toujours pas compris
problème n'est pas ici - en-tête ("View_task.php? repor_id =". $ _ POST ['POST [' REAP_ID ']);, il ne prouve tout simplement pas d'identité dans l'URL
@Petersondak alors passez-vous le rapport_ide du tableau de bord à View_Task en utilisant la méthode postale? , Si oui, alors à la ligne 7, vous devrez faire $ _Post ['repor_id'] ineead de $ _get
@Bilalmalalik echo "
@bilalmalik c'est comme ça que j'ai passé
@Petersondak qui est correct, puis inspectez et voyez si vous obtenez de la valeur en $ ligne ['repor_id']
Vous avez mentionné que:
Bien que vous obtenez l'erreur sur view_task.php, mais les données sauvegardent avec succès! P> blockQuote>
base à ce sujet, je peux supposer que vous avez entré dans la vue_task.php à partir du tableau de bord.php sans erreur p>
et une erreur ne se produit qu'après avoir cliqué sur le bouton Enregistrer. P>
Donc,
Task_Name code> et
repor_id code> doit être envoyé sur update_task_name.php avec succès p>
mais lorsque vous essayez de rediriger le retour à Task_View.php avec : p>
xxx pré> Vous n'avez pas apporté
repor_id code> pour visualiser_task.php et a provoqué l'erreur que vous avez mentionnée dans votre question p>
Donc, voici ma réponse, dans votre update_task_name.php p>
Remplacez ceci: p>
xxx pré> avec ceci: p>
xxx Pré> p>
Tout cela est trop complexe, car il est assez simple:
Étendu l'exemple, mais le pendant code> semble étrange pour un seul enregistrement.
Semble que votre requête ne vous donne probablement pas de valeur en $ repor_id et $ Task_Name
@bilalmalik pouvez-vous maintenant comment le résoudre?
print_r ($ _ post) dans update_task_name.php, et laissez-nous savoir si vous obtenez les valeurs
@bilalmalik à quelle ligne?
Wen vous appelez
en-tête ("Emplacement: voir_task.php"); code>, vous n'avez pas passé le "Report_ID" comme paramètre
@Viperliu Pouvez-vous résoudre le problème en modifiant mon code ci-dessus?
avant $ update = "Mettre à jour ot_report Set Task_Name =: Task_Name où repor_id =: repor_id"; pouvez-vous faire imprimer_r
Il suffit de passer reporter_id comme paramètre sur View_Task.php. Il devrait être comme celui-ci
en-tête ("View_task.php? Repor_id =". $ _ POST ['' POST ['REAP_ID']) CODE>
De quoi parlez-vous @viperliu, il le fait avec la méthode postale comme indiqué dans la balise de formulaire, ce n'est pas un problème
L'erreur est survenue dans la tâche de vue.php et mettez à jour la tâche_name.php exécuté sans erreur
Alors quelque chose doit être faux après la redirection
@Viperliu, mise à jour réussie et rester sur la même page. Mais je dois cliquer deux fois sur le bouton de retour sur le tableau de bord.php
Donc le travail upound_task_name.php fonctionne sans erreur, non?
@Yes, mais je dois cliquer deux fois sur le bouton de retour pour accéder à la page précédente. Pourquoi?