2016-04-28 13 views
1

Ich versuche, eine JQM-Tabelle in viewsessions.php-Datei auszugeben. Ich habe das Thema recherchiert und diese Jquery Mobile Table in PHP code Lösung versucht, aber die Seite lädt nicht mit meinem Code, also habe ich es entfernt, wo die Tabelle funktioniert.Wie bekomme ich eine Jquery Mobile-Tabelle, um in PHP zu echo?

Irgendwelche Ideen, wie man das macht?

viewsessions.php

<?php 

$servername = ""; 
$username = ""; 
$password = ""; 

// This code creates a connection to the MySQL database in PHPMyAdmin named 'ibill' 
$con=mysqli_connect('localhost','root','cornwall','ibill'); 

// The connection is then checked, if it fails, an echo is sent back to the page stating a connection error. 
if (mysqli_connect_errno()) { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

// This is the query that is sent to the ibill database. 
$viewsessions = "SELECT typeofactivity, employer, date, time, amount FROM session_details"; 
$result = $con->query($viewsessions); 

if ($result->num_rows > 0) { 
    echo "<table><tr> 
        <th>Type of Activity</th> 
        <th>Employer</th> 
        <th>Date</th> 
        <th>Time</th> 
        <th>Amount (GBP)</th> 
       </tr>"; 
// output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo "<tr> 
       <td>".$row["typeofactivity"]."</td> 
       <td>".$row["employer"]."</td> 
       <td>".$row["date"]."</td> 
       <td>".$row["time"]."</td> 
       <td>".$row["amount"]."</td> 
      </tr>"; 
    } 
    echo "</table>"; 
} else { 
    echo "0 results"; 
} 
$con->close(); 
?> 

ich mehrere Seiten innerhalb einer HTML-Datei so bin mit haben nur die Seite mit dem entsprechenden Code unten geschrieben ..

main.php # viewsessions

<!--**********************************************VIEW SESSIONS PAGE*******************************************************************************--> 
    <!--***********************************************************************************************************************************************--> 

    <!--********************************HEADER**************************************************************************************--> 
    <div data-role="page" id="viewsessions"> 
     <div data-role="header" data-id="foo1" data-position="fixed"> 
     <div class='cssmenu'> 
     <ul> 
      <li class='active'><a href='#home'>Home</a></li> 
      <li><a href='#sessionrecord'>Record a Session</a></li> 
      <li><a href='#viewsessions'>View Sessions</a></li> 
      <li><a href='#invoice'>Create an Invoice</a></li> 
     </ul> 
     </div> 
    </div><!-- /header --> 
    <!--********************************HEADER***************************************************************************************--> 

    <!--********************************MAIN*****************************************************************************************--> 
    <div data-role="main" class="ui-content"> 
     <p><span class="logout"><a href="logout.php" data-role="button">Sign Out</a></span></p> 
     <div class="loginphp"> 
     <?php 
     if (isset($_SESSION['user_session']) and $_SESSION['user_session']!=""){ 
     echo '<p>Signed in as:&nbsp;<span class="uname">' . $_SESSION['user_session'] . '</span></p>';  } 
     else { 
     echo 'not working'; 
     } 
     ?> 
     </div> 



     <img class="mainlogo" src="/projects/ibill_v3/img/ibill logo.png" alt="iBill Logo" width="200" height="152"> 
      <h1>Recorded Sessions</h1> 
      <section class="maincontent"> 
      <?php 
       include "viewsessions.php"; 
      ?> 
      </section> 
    </div> 
    <!--********************************MAIN******************************************************************************************--> 

    <!--********************************FOOTER****************************************************************************************--> 
    <div data-role="footer"> 
     <footer class="footer"> 
     <p>awilliams&copy;</p> 
     </footer> 
    </div> 
    </div> 
    <!--********************************FOOTER*****************************************************************************************--> 

    <!--**********************************************************END OF VIEW SESSIONS PAGE***************************************************************--> 
    <!--**************************************************************************************************************************************************--> 
+0

Ihr Servercode sieht gut aus. Könnten Sie auch den entsprechenden HTML-Code posten? –

+0

Ich habe meine Frage aktualisiert, um den relevanten HTML-Code zu enthalten – asharoo85

Antwort

1

Wenn Sie die Tabelle vom Server aktualisieren, müssen Sie sie neu erstellen (".selector").table("rebuild"); sonst brauchen Sie nur die Tabelle, die Sie

$(".selector").table({ 
    defaults: true 
}); 

außerdem müssen neu initialisiert data-role="table" Attribut in der Tabelle Tag aufzunehmen, und ich denke, dass Ihr Problem sein könnte, weil du es nicht einfügen versuchen, diesen Tag enthält , und wenn es nicht funktioniert, verwenden Sie den folgenden Code

if ($result->num_rows > 0) { 
    echo '<table data-role="table" class="selector" data-mode="reflow"> <tr> 
        <th>Type of Activity</th> 
        <th>Employer</th> 
        <th>Date</th> 
        <th>Time</th> 
        <th>Amount (GBP)</th> 
       </tr>'; 
// output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo "<tr> 
       <td>".$row["typeofactivity"]."</td> 
       <td>".$row["employer"]."</td> 
       <td>".$row["date"]."</td> 
       <td>".$row["time"]."</td> 
       <td>".$row["amount"]."</td> 
      </tr>"; 
    } 
    echo '</table><script> $(".selector").table({ 
     defaults: true 
    });</script>'; 
} else { 
    echo "0 results"; 
} 
+0

Hallo Hatem Ahmed, ich habe gerade diesen Code ausprobiert und es hat nicht funktioniert. Ich habe auch "für" auf der Tabelle Attribute nur für den Fall ersetzt, aber es hat immer noch nicht funktioniert. Irgendwelche Ideen? – asharoo85

+0

Senden Sie die gepufferten HTML und ich werde es versuchen –

+0

Parse Fehler: Syntaxfehler, unerwartet '".table ({'(T_CONSTANT_ENCAPSED_STRING), erwartet', 'oder'; 'in C: \ xampp \ htdocs \ projects \ ibill_v3 \ html \ viewsessions.php in Zeile 39 – asharoo85

1

Sie PHP-Code sieht OK aus, und so tun Sie Ihre HTML. Beachten Sie, dass, wenn Ihr PHP-Code korrekt funktioniert, die Tabelle als Teil des HTML-Dokuments vor dem der jQuery Mobile Styling und Erweiterung generiert wird. Bitte überprüfen Sie, ob Ihr PHP-Code tatsächlich den gewünschten HTML-Code zurückgibt. Dies kann durch Kopieren/Einfügen des Codes in ein separates Skript erfolgen und direkt ausgeführt werden.

Denken Sie auch daran, die folgende Überprüfung für eine gute Vorgehensweise hinzuzufügen. Der Grund ist, dass $con->query() möglicherweise FALSE zurückgibt, während $result->num_rows ein Objekt mysqli_result erwartet.

// This is the query that is sent to the ibill database. 
$viewsessions = "SELECT typeofactivity, employer, date, time, amount FROM session_details"; 
$result = $con->query($viewsessions); 

//Check if a result was returned 
if($result === FALSE){ 
    echo mysqli_error($con); 
}