web-dev-qa-db-fra.com

PHP Le tableau ne s'affiche pas dans l'article

Si je clique sur le bouton Aperçu dans mon article, le tableau s'affiche exactement comme je pensais l'avoir configuré. Cependant, si j'essaie de cliquer et d'obtenir l'affichage de la page sur le front-end, aucun tableau n'est affiché. Qu'est-ce qui fait que Joomla ne montre pas la table?

<?php

    $param1 = $_GET['param1'];
    $param2 = $_GET['param2'];
    $param3 = $_GET['param3'];

    $server = "Server"; 
        $uid = "uid"; 
        $pwd = "pwd"; 
        $database = "DB"; 

    $conn = mssql_connect($server,$uid,$pwd);

    if ($conn===false)
    {
        echo '<p>Cannot connect to SQL Server Database. Please try again later.</p>';
        exit;
    }
    if (mssql_select_db($database,$conn) === false) 
    {
        echo '<p>Cannot connect to DB. Please try again later.</p>';
        exit;
    }
    $proc = mssql_init('ProcedureName',$conn);
    mssql_bind($proc,'@param1',$param1,SQLVARCHAR);
    mssql_bind($proc,'@param2',$param2,SQLVARCHAR);
    mssql_bind($proc,'@param3',$param3,SQLVARCHAR);
    if ($result = mssql_execute($proc)) 
    {
        $number_of_rows = mssql_num_rows($result);
        if($number_of_rows > 0) {
            echo '<table border="1">';
            echo '<tr>';
            echo '  <th>Employee </th>';
            echo '  <th>EmployeeID </th>';
            echo '  <th>Sale Price </th>';
            echo '  <th>Tax Price </th>';
            echo '  <th>Total Price </th>';
            echo '  <th>Market Price </th>';
            echo '</tr>';  

        while ($Row = mssql_fetch_assoc($result)) 
        {
            echo '<tr><td>'.$Row['Employee'] . 
            '</td><td>'.$Row['EmployeeID'] . 
            '</td><td>'."$".round($Row['SalePrice']) . 
            '</td><td>'."$".round($Row['TaxPrice']) . 
            '</td><td>'."$".round($Row['TotalPrice']) . 
            '</td><td>'."$".round($Row['MarketPrice']) . 
            '</td></tr>';
        }
            echo '</table>';
        }
        mssql_close($con);
    }
?>
1
IcyPopTarts

Je ne vois rien d'anormal aux échos. Si l'éditeur ne supprime pas votre code, je vous conseillerais de supprimer un à un les ifs suivants pour voir s'il fait écho aux en-têtes de table, quels que soient les résultats de la requête.

if ($result = mssql_execute($proc)) {
if($number_of_rows > 0) {

Assurez-vous également que vous obtenez au moins un résultat de la requête en modifiant tout le code de données de la table avec quelque chose comme ceci.

while ($Row = mssql_fetch_assoc($result)) {
    echo $Row['Employee'];
}

UPDATE:

Si vous placez votre code dans l'article, cela ne fonctionnera pas. Essayez d'utiliser une extension telle que Regular Labs - Sourcerer et placez votre code à l'intérieur du

{source} votre code {/ source}

alors essayez

0
John

Vous ne devez pas ajouter php aux articles, votre code est également très dangereux, vous utilisez des paramètres sans échappement ni filtrage.

0
Klas