Je rédige ci-dessous un contrat simple qui stocke tous les résultats des questionnaires de chaque ID.
contrat réponse{
mappage(adresse => mappage(chaine => bool)) votants;
struct qList {
uint count; //Le nombre de répondants
mappage(adresse => mappage(uint => uint)) réponse;
}
mappage(chaine => qList) questionnaires;
fonction voter(chaine ID, uint qNum, uint ans) renvoie (bool) {
si(votants[msg.sender][ID]) throw;
votants[msg.sender][ID] = true;
questionnaires[ID].count += 1;
questionnaires[ID].réponse[msg.sender][qNum] = ans;
return true;
}
fonction getNumResult(chaine ID) constant renvoie (uint res) {
return questionnaires[ID].count;
}
}
La fonction "voter" incluant des arguments peut être appelée et minée avec succès, cependant je ne peux pas obtenir la valeur de retour avec le message d'état "En attente de la transaction à être minée..." dans l'écran du navigateur solidity lorsque j'appelle "getNumResult" avec l'ID qui a déjà été enregistré via la fonction "voter".
Je vous serais reconnaissant si quelqu'un pouvait conseiller la cause de cela et la solution pour obtenir la valeur de retour de la fonction avec des arguments.