2017-03-12 4 views
-1

Salut j'ai un problème avec cette sélection je tente d'importer des éléments par défaut de mon dtaabse à un sélectionner pour un utilisateur d'inscription l'erreur est sur cette ligne if ($ result-> num_rows> 0) puis-je faire !!!?Avis: Essayer d'obtenir la propriété de non-objet dans l'inscription.php sur la ligne 135

<?php 
$servername = "localhost"; 
$username = "root"; 
$password = ""; 
$dbname = "gimnasio"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$sql = "SELECT idTipo de Documento,Tipo_de_Documento FROM tipo de documento"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 
    echo "<table><tr><th>idTipo de Documento</th><th>Tipo_de_Documento</th></tr>"; 
    // output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo "<tr><td>".$row["idTipo de Documento"]."</td><td>".$row["Tipo_de_Documento"]."</td></tr>"; 
    } 
    echo "</table>"; 
} else { 
    echo "0 results"; 
} 
$conn->close(); 
?> 

      <div> 



     <div class="form-group"> 
        <label>Tipo de Documento:</label> 

      <select id="tipo_tel" class= "form-control" name="txt_utdoc"> 

       <option value="101">CEDULA DE CIUDADANIA</option> 
        <?php 

        while($row = $result->fetch_assoc()) 
        { 

         ?> 
         <option value="<?php echo $row['idTipo de Documento']; ?>"><?php echo $row['Tipo_de_Documento']; ?></option> 
         <?php 
        } 

        ?> 
      </select> 

     </div> 
      </div> 
+0

$ sql = "SELECT idTipo de documento, Tipo_de_Documento FROM' tipo de documento'"; (utilisez des back-tics autour du nom de la table) Le nom de la table et le nom de la colonne avec des espaces sont complètement faux. –

+0

Copie possible de [Comment j'échappe aux mots réservés utilisés comme noms de colonnes? MySQL/Create Table] (http://stackoverflow.com/questions/2889871/how-do-i-escape-reserved-words-used-as-column-names-mysql-create-table) –

Répondre

0

Si vous obtenez une erreur « propriété d'un non-objet », alors cela suggère qu'un objet que vous attendez à être affecté à la variable n'a pas été réglée correctement.

Dans votre cas, $result n'est pas un objet ou est retourné comme null/false.

Vous devez probablement utiliser une forme de try {} catch($e) {} pour vous assurer que si la requête de votre base de données échoue, l'erreur est interceptée.

Documentation sur ce qui sera retourné par MySQLi::query() se trouve ici

http://php.net/manual/en/mysqli.query.php

+0

ok je trouve l'erreur . mais maintenant dans ma forme seulement afficher une colonne de trois colonnes qui ont dans mon db !!! – SERGIO