2010-07-31 6 views
2

Je suis un peu confus à propos de l'affichage des données d'une base de données MySQL. Je voudrais faire une seule demande $.getScript(''); pour saisir des valeurs ponctuelles si possible, mais mon problème est de le faire fonctionner avec plusieurs membres. Je dois saisir les valeurs de points pour chaque utilisateur par leur numéro d'identification. (C'est pour un logiciel de forum - ZetaBoards .. fondamentalement un système de point. Les points sont montrés au-dessous du compte de compte d'utilisateurs.) Voici mon code jusqu'ici. peut également signaler les choses de PHP si nécessaire. Les fonctions +/- fonctionnent parfaitement, même si vous ne voyez pas ces options parce que vous n'êtes pas un modérateur. : p Je suis juste coincé quand il s'agit d'afficher les données. D: Voici la base principale du code .. il est actuellement testé sur le tableau this.MySQL -> PHP -> JS/jQuery

http://209.85.62.24/212/175/0/p348841/main.js

Un système similaire a fait quelque chose comme ça ... même si je ne comprends pas exactement comment cela fonctionne. Le deuxième lien est pour 2 utilisateurs faisant une seule demande comme je l'ai dit. Je suppose que c'est ce que je devrais faire? mais comment .. c'est la question. haha.

droit qu'à un seul lien, sooo .. D:

http://themeszetaboards.com/tokens/getpoints.php?uid=260836

http://themeszetaboards.com/tokens/getpoints.php?uid=260836|195145

Je pourrais probablement faire des demandes individuelles à un fichier php, mais je préfère ne pas tirer 20+ demandes sur une seule page. (un pour chaque utilisateur) xD Des idées? Merci. (:

Oh: Dans ma base de données MySQL, j'ai deux champs: 'uid' et 'points' Désolé si cette question est trop difficile/spécifique

Edit:..

D'accord, Au lieu de visser avec les IDs, je les ai juste jetés sur la même page Merci pour l'aide que vous trois. D

+0

La question n'est pas trop difficile ni trop spécifique; on ne sait pas exactement quel est votre problème. Avez-vous du mal à concevoir l'architecture globale d'un tel système? Ou est-ce la communication entre le javascript et les parties PHP? Ou est-ce plus d'une question SQL? – tdammers

+0

Vous devriez obtenir des points, des images de profil, et d'autres informations sur un utilisateur (qui doit être affiché) en interne sur le serveur. L'interrogation MySQL devrait aller dans PHP, donc tous les attributs utilisateur sont chargés quand la page est affichée. – pop850

+0

Eh bien, mon problème est fondamentalement en utilisant PHP pour créer un tableau qui peut être lu avec JS pour afficher les points de l'utilisateur .. si cela a du sens. Je n'arrive pas à comprendre comment faire ça exactement. Je suppose qu'un exemple de ce que j'essaie de faire est les deux derniers liens. (les 'getpoints.php') Blah, déroutant. xD – Joe

Répondre

1

Oui, pour le traitement 1 ou plusieurs requêtes, je qualifierais le script comme dans votre question:

http://themeszetaboards.com/tokens/getpoints.php?uid=260836|195145 

Dans PHP, je l'aurais quelque chose comme ce qui suit:

# Get UIDs from GET Parameter, Only allow numeric values (and separator) 
$uids = explode('|' , preg_replace('/[^\d\|]/' , '' , $_GET['uid'])); 
/* 
Perform MySQL Query and return Array of uids and points 
$out = array('260836'=>'5pts' , '195145'=>'100pts'); 
*/ 
header('Content-type: application/json'); 
die(json_encode($out)); 

Cela devrait puis pouvoir être analysé avec jQuery pour extraire les points associés à chaque uid.

+0

Était sur la bonne voie. Je vous remercie! (: – Joe

2

utilisez php, créez votre tableau normal , puis utiliser JSON Encode de PHP http://php.net/manual/en/function.json-encode.php pour créer un tableau json, les tableaux json peuvent être lus via javascript, obtenir ce tableau utiliser jquer ys $ .Get

où vous envoyez une demande d'obtention normale.

2

En fait, si vous y pensez dans la forme la plus simple, c'est facile, je vais vous expliquer.

Vous voulez essentiellement un tableau de la table [uid] => points à droite, bien mis en place une page à faire que toute la page php fait exécuter votre requête et imprimer les résultats d'une manière délimitée.Donc, sur votre page php faire quelque chose comme ceci:

<? if($result > 0){ 
     $string = ""; 
     foreach($result as $key => $value){ 
      $string = $key.','.$value.'|'; 
     } 
    } 

    //then trim the $string to remove the very last pipe. 
    $final_value = trim($string,'|'); 

    //now echo this to the page and put it into a div say id=results 
    //now in your div you can do all the styling here or in your 
    //final page it deosn't matter. 
?> 
    <div id="results"> 
     <?= $final_value ?> 
    </div> 

ou vous pouvez utiliser le tableau ici et créer la vue dans les résultats et les js vous suffit de tirer le code HTML ici afin que cette page fait tout le levage de charges lourdes, mais Cela dépend de vos besoins. c'est-à-dire comment les résultats seront affichés et tous. si ça va être regroupé, alors tout va bien ici.

maintenant sur l'autre page, le tarif normal il suffit d'ajouter cette jQuery:

Si vous voulez, vous pouvez utiliser des gestionnaires de cliquer pour envoyer des variables à une fonction pour construire la requête à la volée (en utilisant dire cases à cocher et un bouton ou un lien vers getScript:

function getScript(){  
//to get all checked boxes and glue as one variable you could do this: 
$("input:checked").each(function(){ 
    var uids = []; 
    var points = $(this).val(); 
    uids.push(points+'|'); 
}); 
//cleanup 
var final_string = $.trim(uids); 

$('#result').load('your/php/file.php?uid='+final_string+' #results', function() { 
     //the #results tells jquery to get the contents of this page only from 
     //the #results div. so the #results content will be placed into the 
     //result div on this page when the button is clicked. only thing 
     //you have to do now is in this section call another js function 
     //to parse the returned string or do it on the php page in the #results 
     //div and show the html here on this page. your choice. 
}); 

maintenant je pris quelques choses pour acquis, comme vous le savez comment se connecter à SQL et retourne les résultats comme un tableau de ce genre de chose, mais si vous avez besoin plus de direction sur les js ici juste commenter et je serai heureux d'élaborer plus loin sur n'importe quelle partie pour vous

+0

oh oui comme Lucanos dit si vous utilisez de cette façon ou json que vous voulez vous assurer que vous vérifiez vos valeurs comme dans ses var $ uids fondamentalement j'ai commencé ma solution après que vous avez déjà fait la requête. – BrandonS

Questions connexes