2016-06-19 2 views
0

Я хочу сделать select categoryName из моей базы данных и показать результат в окне html с параметрами для каждого пользователя ... Я не знаю, почему выбор не отображает ничего .. Я знаю, что это «блок», но я не знаю, где (потому что он больше не показывает поле «Дата»). Я уже пробовал другие решения из stackoverflow, но он все еще не работает. Я был бы признателен за помощьcreate select with options from mysql pdo

<?php 
    session_start(); 
?> 

<!DOCTYPE html> 

<HTML> 
    <HEAD> 
     <title>BMA.WALLET</title> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

     <link rel="stylesheet" type="text/css" href="../css/page-style.css"> 
     <link rel="stylesheet" type="text/css" href="../css/account-style.css"> 
     <link rel="stylesheet" type="text/css" href="../css/login-style.css"> 
     <link rel="stylesheet" type="text/css" href="../css/expense-operation-style.css"> 
     <link rel="stylesheet" type="text/css" href="../css/income-operation-style.css"> 

     <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic' rel='stylesheet' type='text/css'> 
     <link href='https://fonts.googleapis.com/css?family=Roboto:400,100,300,100italic,300italic,400italic,500,500italic,700,700italic,900,900italic&subset=latin,latin-ext' rel='stylesheet' type='text/css'> 

     <link rel="shortcut icon" href="../img/wallet.png"/> 
    </HEAD> 

    <BODY> 
     <div id="wrapper"> 
     <div class="center" id="HEADER"> 
      <h1><span>BMA.</span>WALLET</h1> 
      <div class="motto">Cu noi știi unde ți-au zburat banii!</div> 
      <div class="main-menu"> 
       <ul> 
        <li><a href="Facilities.html"><img src="../img/facilities.png" width="40" alt="logout icon" title="Facilități"></a></li> 
        <li><a href="myAccount.html"><img src="../img/report.png" width="40" alt="logout icon" title="Rapoartele tale"></a></li> 
        <li><a href="groupPage.html"><img src="../img/group.png" width="40" alt="logout icon" title="Grupurile tale"></a></li> 
        <li><a href="Settings.html"><img src="../img/settings.png" width="40" alt="settings icon" title="Setările tale"></a></li> 
        <li><a href="#"><img src="../img/iconLogout.png" width="40" alt="logout icon" title="Deconectează-te!"></a></li> 
       </ul> 
      </div> 
     </div> 
     <div id="CONTENT" class="center"> 
      <div class="header-shadow"> 
       <img src="../img/shadow.png" alt="decorative - header shadow"> 
      </div> 

      <div class="operation-content"> 
       <img src="../img/addtowallet.png" alt="wallet"> 
       <form action="../php/operations.php" method = "post"> 
        <label>Introduceți suma:</label> 
        <input type="number" min="1" name = "incomeSum" required><br> 
        <label>Alegeți o categorie:</label> 
        <select name="incomeCat"> 
         <?php 
          require('Connection.php'); 
          try { 


           $session = $_SESSION['user']; 


           $sql = $conn->prepare("SELECT categoryName FROM Categories WHERE ID_User = :ID_User"); 
           $sql->execute(); 
           $result = $sql->fetchAll(); 


          if (count($result)) { 

           print '<select id="incomeCat">'; 
           foreach ($result as $row) { 
            echo '<option value="'.$row['incomeCatList'].'">'.$row['incomeCatList'].'</option>'; 
           } 
           print '</select>'; 
           print '<input type="submit" value="Submit">'; 

           } else { 
            echo "No rows returned."; 
           } 
          } catch(PDOException $e) { 
           echo 'ERROR: ' . $e->getMessage(); 
          } 


         ?> 

        <br><label>Selectați data:</label> 
        <input type="date" max="1990-12-31" name ="incomeDate" required><br> 
        <input type="submit" name="addSubmit" value="adaugă"> 
       </form> 
      </div> 

     </div> 

     <div class="center" id="FOOTER"> 
      <div class="social-media"> 
       <p>Iti place proiectul nostru?</p> 
       <p><span>Impartaseste-l cu prietenii!</span></p> 
       <a href="http://www.facebook.com" target="_blank"><img src="../img/fbMedia.png" width="50" alt="Facebook Page"></a> 
       <a href="http://www.twitter.com" target="_blank"><img src="../img/twitterMedia.png" width="50" alt="Twitter Page"></a> 
      </div> 

      <div class="contact"> 
       <h1>Contact</h1> 
       <p>Ai vreo problema sau o recomandare pentru noi?</p> 
       <p>Nu ezita sa ne contactezi!</p> 
       <p>[email protected]</p> 
      </div> 

      <div class="group-shortcut"> 
       <p>Creează un grup pentru a gestiona cheltuielile împreună cu prietenii!</p>    
       <div class="small-footer-button"><a href="createGroup.html">Creează un grup</a></div> 
       <p>Ai deja un grup? Intră acum și vezi ce au mai făcut membrii.</p>   
       <div class="small-footer-button"><a href="myGroups.html">Verifică grupurile tale</a></div> 
      </div> 
     </div> 
    </div> 
    </BODY> 
</HTML> 

ответ

0

Я пытался переделать свой проект, и я понял, что вы должны написать требовать с «» require("Connection.php");, также убедитесь, что вы используете имя столбца в Еогеаспе, как этот foreach ($result as $row) { print '<option value="'.$row['categoryName'].'">'.$row['categoryName'].'</option>'; } также убедитесь, что ваш расширение файла .php, и оно находится в той же папке с файлом Connection.php

+0

Спасибо: D Вот и все. Теперь работает. Большое спасибо! –

2

Вы используете заполнитель, но ничего не являются обязательными. Попробуйте:

$sql = $conn->prepare("SELECT categoryName FROM Categories WHERE ID_User = :ID_User"); 
$sql->execute(array(':ID_User' => $session)); 
$result = $sql->fetchAll(); 

Обратите внимание на array(':ID_User' => $session) в казнить, это связывает значение SESSION с вашим запросом.

Дополнительную информацию о подготовленных заявлениях с PDO см., http://php.net/manual/en/pdo.prepared-statements.php.

Также ваш запрос должен выбрать incomeCatList, если вы хотите это значение. В настоящее время вы выбираете categoryName; или, возможно, incomeCatList должен быть псевдонимом для этого столбца?