2015-09-20 6 views
1

J'ai besoin de récupérer une valeur de colonne particulière d'une ligne particulière en utilisant PHP dans MySQL. Voici un exemple, vérifier imag Je veux aller chercher le mostOnline et sa valeur, je l'ai essayé ce ci-dessous le code, mais ne fonctionne pasRécupère la valeur de colonne de la ligne particulière

<?php 
    $query = $forumdb->prepare("SELECT variable FROM smf_settings WHERE Value = 'mostOnline' LIMIT 1"); 
    $query->execute(); 
    $result = $query->fetch(); 
?> 
<div class="media-body"> 
<p id="greet" align="left">Total Members: <?php echo $result ?> <p> 
</div> 

Je suis sûr que je l'ai fait quelques erreurs , comment cela pourrait-il être réparé et être montré? J'utilise PDO en passant.

Répondre

0

essayer cette

$query = $forumdb->prepare("SELECT variable FROM smf_settings WHERE variable = 'mostOnline' LIMIT 1"); 
$result = $query->fetch(); 
print_r($result); 
echo $result['value'];//this should echo 211 
+0

Pour récupérer la valeur et la variable: 'Sélectionnez la variable, la valeur ...' –

+0

J'ai essayé mais la sortie est 'Total Members: Array' –

+0

print_r ($ result) et dites-moi. Verse-t-il les valeurs que tu veux? – aimme

0

Vous essayez de récupérer les données de la colonne de valeur où la valeur est mostOnline. Ce qui n'est certainement pas correct.

"SELECT variable FROM smf_settings WHERE Value = 'mostOnline' LIMIT 1" 

Essayez ceci:

$query = $forumdb->prepare("SELECT variable, value FROM smf_settings WHERE variable = 'mostOnline' LIMIT 1"); 

Dans votre HTML:

<p id="greet" align="left">Total Members: <?php echo $result['value'];?> </p> 

Notez la balise de fermeture </p> incorrect dans votre code aussi.

Sortie:

Total Members: 211 
+0

J'ai essayé mais la sortie est Total Members: Array –

+0

Et quand j'imprimer c'est la sortie 'Array ([variable] => mostOnline [0] => mostOnline [valeur] => 211 [1] => 211) ' –

+0

@DavidDejan N'est-ce pas le résultat requis? Si vous souhaitez afficher uniquement la valeur par exemple 'Total Members: 211', vous devez lui faire écho' $ result ['value']; 'seulement et pas' $ result'. – user5173426

0

votre code est incomplet parce que vous devez lier le résultat comme celui-ci:

<?php 
    $data = 'mostOnline'; 
    $result = 0; // if database connection or error default is 0 
     if ($query = $forumdb->prepare("SELECT variable FROM smf_settings WHERE Value=? LIMIT 1")) { 
     $query->bind_param('s', $data); 
     $query->execute(); 
     $query->bind_result($variable); 
     $query->store_result(); 
     $selected_rows = $query->num_rows; 

     if ($selected_rows > 0) { 
      while($query->fetch()) { 
      $result = $variable; 
      } 
     } else { 
     $result = 0; 
     } 
     $query->free_result(); 
     $query->close(); 
     } 

    @$forumdb->close(); 
?> 

<div class="media-body"> 
<p id="greet" align="left">Total Members: <?php echo $result; ?> <p> 
</div>