Rendu des données dans une table à l'aide de jQuery en PHP
P粉894008490
2023-09-04 09:54:29
<p>J'ai des données et j'utilise PHP pour y accéder. J'ai donc créé un simple bouton et lorsque je clique dessus, mon programme doit créer un tableau contenant les données. <strong>Ci-dessous, vous pouvez voir le code jQuery qui lit les données et crée une table. </strong>Mais le problème est que je ne peux pas accéder à tous les éléments de DATA.
Je tiens à préciser que puisque j'ai également ajouté le code, je fais une sélection dans les données. <em>Il s'appelle "household.php"</em></p>
<pre class="brush:php;toolbar:false;"><html lang="fr">
<tête>
<script
src="https://code.jquery.com/jquery-3.6.2.js"
intégrité="sha256-pkn2CUZmheSeyssYw3vMp1+xyub4m+e+QK4sQskvuo4="
crossorigin="anonyme"></script>
<link rel="feuille de style" href="style.css">
<script>
fonction suchen() {
jQuery(document).ready(function($) {
$.ajax({
tapez : "obtenir",
url : "ménage.php",
Type de données : "json",
succès : fonction (réponse) {
var data = JSON.parse (réponse)
var html_table = "";
data.forEach (fonction (élément) {
var rangée = $("<tr>");
row.append($("<td>").text(item.contact_id_a));
row.append($("<td>").text(item.contact_id_b));
// ajoute plus de cellules pour des colonnes supplémentaires
html_table += rangée[0].outerHTML;
});
$("#tabelle").html(html_table);
}
});
});
}
</script>
≪/tête>
<corps>
<form id="form" onsubmit="suchen()" méthode="get">
<label>Entrez votre âge : </label>
<br />
<type d'entrée="numéro" nom="min" min="0">
<br />
<type d'entrée="numéro" nom="max" min="0">
<br />
<type d'entrée="soumettre">
</formulaire>
<div id="tableau"></div>
</corps>
</html></pre>
<p><strong> Ceci est le code du fichier family.php. Cela fonctionne sans problème. Mais je n'arrive pas à me connecter entre mes principaux fichiers php. </strong></p>
<pre class="brush:php;toolbar:false;"><?php
require_once '/var/www/html/wordpress/wp-content/plugins/civicrm/civicrm/civicrm.config.php';
require_once 'CRM/Core/Config.php';
$config = CRM_Core_Config::singleton();
$relations = CiviApi4Relationship::get()
->addSelect('contact_id_a', 'contact_id_b', 'contact_id_a.display_name', 'contact_id_b.household_name', 'relationship_type_id')
->addClause('OR', ['relationship_type_id', '=', 7], ['relationship_type_id', '=', 8])
->setLimit(25)
->exécuter();
foreach ($relations en tant que $relation) {
// faire quelque chose
}
var_dump(json_encode($relationships));
?>≪/pré>
<p>Je ne parviens pas à accéder aux données à l'aide du fichier php. Je ne parviens pas non plus à me connecter à mon fichier php principal en recherchant php. </p>
Je pense que vous y êtes déjà
household.php
文件中使用了echo json_encode($relationships)
。您不需要解析响应(您使用过),因为您已经将dataType
写入json
. Il se convertira automatiquement. J'espère que cette réponse vous aidera. Selon le jQuery Manual, "Tout JSON mal formé sera rejeté et générera une erreur d'analyse. Depuis jQuery 1.9, les réponses vides seront également rejetées." Par conséquent, vous pouvez simplement utiliser dataType: 'json' si vous êtes sûr que le serveur renverra du JSON correctement formaté. S'il renvoie simplement "une chaîne qui ressemble à JSON", vous devez utiliser dataType: "text json" pour forcer la conversion de jQuery. [Note] Si la réponse ci-dessus ne vous aide pas, je vous recommande d'utiliser cette fonction pour analyser la réponse.var data = jQuery.parseJSON(response);
或var data = $.parseJSON(response)