bei Ausgabe von leerer Tabelle --> FEHLER!

  • Mein PHP Script zur Ausgabe der Daten meiner Tabelle funktioniert ja so wie es soll, außer wenn ich alle Datensätz lösche!

    Daran hab ich aber gedacht und folgendes eingebaut!


    PHP
    <?php
    if ($lcs == "")
       {$lcs = "Derzeit sind keine Daten in der Tabelle vorhanden!"
       }
    ?>

    Trotzdem bekomm ich folgende Fehlermeldung:
    Notice: Undefined variable: lcs in /home/nationnoone/htdocs/test.php on line 22

  • wie wäre es erstmal mit einem strickpunkt am ende? also

    PHP
    <?php
    if ($lcs == "")
       {$lcs = "Derzeit sind keine Daten in der Tabelle vorhanden!";
       }
    ?>
  • hat das damit trotzdem was u tun, auch wenn da als fehlermeldung "undefinded variable" kommt oder kommt ne falsche fehlermeldung aufgrund den fehlenden ; ?

  • poste doch mal deine ganze test.php und wenn das mit dem semikolon der fehler gewesen wäre müsste eigentlich parse error kommen... nicht undefined variable... ich glaube bis zu dem fehlenden ; kommt er garnichts... ich denke das SonicChriz recht hat...

  • Also ich dank euch für die vielen Antworten, leider hat keine gepasst! Auch der fehlende Strichpunkt war und ist nicht der Übeltäter! Deshalb post ich einfach mal den kompletten Quellcode!

    [php:1:b39befee4b]
    <?php

    error_reporting(E_ALL);
    include 'config.php';
    $verbindung = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());
    mysql_select_db(MYSQL_DATABASE) OR die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());

    $abfrage1 = mysql_query("SELECT Counterstand FROM Counter ORDER BY ID DESC LIMIT 1");
    $abfrage2 = mysql_query("SELECT Datum, Uhrzeit, Counterstand FROM Counter");

    while($row = mysql_fetch_array($abfrage1))
    {$lcs = $row['Counterstand'];
    if ($lcs == "")
    {$lcs = "Derzeit sind keine Daten in der Tabelle vorhanden!";
    }
    }
    mysql_free_result($abfrage1);


    echo
    "<html>
    <head>
    <title>Countersave</title>
    <link href='countersave.css' rel='stylesheet' type='text/css'>
    </head>
    <body>
    <center><div class='ueb'>.::Countersave::.</div></center>


    <table border='0'>
    <tr>
    <td><div class='tab1'>Counterstand bei letzter Sicherung:</div></td>
    <td align='right' width='50'><div class='tab2'>$lcs</div></td>
    </tr>
    </table>";

    while($row = mysql_fetch_array($abfrage2))
    {echo $row['Datum']."".$row['Uhrzeit']."".$row['Counterstand']."
    \n";
    }
    mysql_free_result($abfrage2);

    echo
    "<form action='speichern.php' method='post'>
    <input type='submit' value='Counterstand sichern!'>
    </form>
    </body>
    </html>";
    ?>[/php:1:b39befee4b]

  • Im Beispiel oben is es natürlich die Zeile 32 bei der er die Fehlermeldung bringt! Immer an der Stelle wo die Variable $lcs in der HTML - Tabelle ausgegeben wird!

    Vielleicht weiß ja jemand warum!?!

  • Aber so hats jetzt endlich gefunkt:

    [php:1:b9c08ae29c]<?php
    if(mysql_num_rows($abfrage1))
    {while($row = mysql_fetch_array($abfrage1))
    {$lcs = $row['Counterstand'];
    }
    mysql_free_result($abfrage1);
    }
    else
    {$lcs = "Derzeit befinden sich keine Daten auf dem Server!";
    }
    ?>[/php:1:b9c08ae29c]