SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 09.10.2007, 08:48:39
theresa theresa ist offline
Anfänger
 
Registriert seit: Oct 2003
Beiträge: 117
SeSSION gibt Fehler im HTML-Validator

Hi

Wenn ich die Seite, eine Abfrage einer DB ohne <?php session_start();?> mache ist der hTML-Validator im grünen Bereich. Sobald ich die SESSION hinschreibe kommen 13 Fehler!

Mein ganzer Code

PHP-Code:
<?php  session_start(); 
unset(
$_SESSION);?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Quartierfest </title>
    <link href="../includes/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <?php 
    $link 
mysql_pconnect("localhost","db1","pw");
    
mysql_select_db("tb2",$link);
    
?>
    <table  border="0" cellpadding="0" cellspacing="0">
        <tr>
            <td colspan='2'><hr width="100%" size="1" noshade="noshade" />    </td>
        </tr>
        <tr valign="top">
            <td  class="nav2">
                <!--START NAVIGATION -->
                    <table width="250"  border="0" cellspacing="0" cellpadding="0">
                        <?
                        $query = "SELECT * FROM navigation WHERE upperlevel=0 ORDER BY orderkey ASC";
                        $result = mysql_query($query,$link);
                        while($row = mysql_fetch_array($result))
                        {
                        $navigationid1=$row["navigationid"];
                        $navtext1=$row["navtext"];
                        ?>
                        <tr >
                            <td height='12'>&nbsp;<a class='nav1' href='details.php?id=<? echo"$navigationid1";?>'><? echo"$navtext1";?></a></td>
                        </tr>
                        <tr>
                            <td >&nbsp;</td>
                        </tr>
                        <? } 
                        ?>
                    </table>            
                <!--ENDE NAVIGATION -->        
            </td>
            <td>
                <!-- CONTENT BEREICH -->
                <table width="100%" border="0"  cellpadding="0" cellspacing="0">
                    <tr >
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>    
                        <td width="10">&nbsp;</td>
                        <td class="pagetitle">    Inhalt folgt    </td>
                    </tr>
                </table>
                <!-- ENDE CONTENT BEREICH -->        
            </td>
        </tr>
    </table>
</body>
</html>
Im Browser ist alles richtig angezeigt, doch eben der Validator will nicht. Es ist die erste Seite die ich aufgerufen wird, trotzdem habe ich unset($_SESSION); gemacht, damit nichts altes mehr drin ist.

Sobald ich session_start() setze bringt mir der Validator 13 Fehler! Alle mit Hinweis aus die Session. Klar steht was da, aber ich schnall es nicht!

Der Validator schlägt mir vor
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
einzusetzen statt
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
Doch dann kann er gar nicht mehr validieren.

Was mache ich falsch? Wo steckt der Wurm?

Hier noch ein Auszug, der Anfang der beiden Validatorentexte

PHP-Code:
Total 13 Fehler und Warnungen

Warning  Line 32
Column 69cannot generate system identifier for general entity "PHPSESSID".
Error  Line 32Column 69general entity "PHPSESSID" not defined and no default entity.
Warning  Line 32Column 78reference not terminated by REFC delimiter
PHP-Code:
 SorryI am unable to validate this document because on line 37  it contained one or more bytes that I cannot interpret as utf-8  (in other wordsthe bytes found are not valid values in the specified Character Encoding). Please check both the content of the file and the character encoding indication.

The error wasutf8 "\xD6" does not map to Unicode 
Bisher habe ich miene Seite nicht so genau getestet, aber da sie in Vista nicht lief, suche ich den Grund und fand diese Fehler im Validator

Danke
Theresa
Mit Zitat antworten
  #2  
Alt 09.10.2007, 10:17:02
rambi
Guest
 
Beiträge: n/a
AW: SeSSION gibt Fehler im HTML-Validator

1. Short Tags sollte man heutzutage nicht mehr unbedingt verwenden..
2. Warum pconnect? Das macht oft mehr Sorgen, als es vermeidet.
3. SELECT * From .... ist sehr unglücklich...
4. Schalte session.trans_sid ab oder (und) arg_separator.output auf &amp; stellen
5. unset($_SESSION); <<<--- verboten

*alles ohne gewähr*

Geändert von rambi (09.10.2007 um 10:17:14 Uhr)
Mit Zitat antworten
  #3  
Alt 09.10.2007, 11:12:43
theresa theresa ist offline
Anfänger
 
Registriert seit: Oct 2003
Beiträge: 117
AW: SeSSION gibt Fehler im HTML-Validator

Danke aber habe noch mehr Fragen


1. Short Tags sollte man heutzutage nicht mehr unbedingt verwenden..
=> OK, aber was ist damit gemeint?

2. Warum pconnect? Das macht oft mehr Sorgen, als es vermeidet.
=> bisher, das heisst die letzten 6 Jahre habe ich immer so die Verbindung zum Server gemacht. Im Buch (PHP 5 von Jörg Krause ist dieser Befehl drin) Was soll ich stattdessen nehmen? Ich möchte ja gerne einen aktuellen Code schreiben


3. SELECT * From .... ist sehr unglücklich...
=>Meinst du den Stern? Die Tabelle habe nur drei Spalten, der Einfachheit habe ich es so geschrieben, werde es ändern und die einzelnen benötigten Spalten schreiben

4. Schalte session.trans_sid ab oder (und) arg_separator.output auf &amp; stellen
=> namdem ich ini_set("arg_separator.output","&amp;"); gerade nach session_start(); war der HTML-Validator zufrieden, danke

5. unset($_SESSION); <<<--- verboten
=> Danke, mache das nur weil ich meinte ich müsste, so in der Verzweiflung und der Fehlermeldungen
Mit Zitat antworten
  #4  
Alt 09.10.2007, 11:22:20
rambi
Guest
 
Beiträge: n/a
AW: SeSSION gibt Fehler im HTML-Validator

1.
<? bla()?> // unglücklich, weil unportabel
<?php bla()?> // tuts auf jedem Server


Zu2:
Hat nix mit aktuell zu tun..
Natürlich darfst du *_pconnect verwenden, wenn du GENAU weißt was du tust.
http://de3.php.net/manual/de/feature...onnections.php


------
Der Rest hat sich wohl erledigt...

Geändert von rambi (09.10.2007 um 11:25:32 Uhr)
Mit Zitat antworten
  #5  
Alt 09.10.2007, 11:50:17
theresa theresa ist offline
Anfänger
 
Registriert seit: Oct 2003
Beiträge: 117
AW: SeSSION gibt Fehler im HTML-Validator

OK, habe es (teilweise) verstanden

Was meinst du dazu?

PHP-Code:
<?php
$dblink
;

function 
DBOpenConnection($server$username$password)
{      
    global 
$dblink;
    
$dblink mysql_connect($server$username$password) or die("<br>Keine Verbindung zum Datenbank-Server möglich. Fehlermeldung: " mysql_error());
}

function 
DBSetDatabase($DBName)
{
    
mysql_select_db($DBName) or die("<br>Verbindung zum Server gut, jedoch keine Daten gefunden. Fehlermeldung:  " mysql_error());
}

function 
DBQuery($SQLStat)
{
    
$result mysql_query($SQLStat) or die("<br>Verbindung zum Server gut, jedoch keine Tabelle gefunden. Fehlermeldung: " mysql_error());
    return 
$result;
}
DBOpenConnection("localhost","db1","pw");
DBSetDatabase("db2");
?>

PHP-Code:
<?php $result DBQuery("Select navigationid,navtext  from navigation where upperlevel=0  order by orderkey");

while(
$row mysql_fetch_array($resultMYSQL_ASSOC))
{
$navigationid1=$row["navigationid"];
$navtext1=$row["navtext"];
?>
<tr ><td height='12'>&nbsp;<a class='nav1' href='details.php?id=<?php echo"$navigationid1";?>'><?php echo"$navtext1";?></a></td></tr>
<?php 
?>
Wäre das eine bessere Lösung?
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
HTML oder XHTML? CSS oder XSLT? ascer HTML, CSS und JavaScript Help! 7 28.09.2007 23:29:16
Fehler in Script das Inhalt einer .txt Datei (HTML Sourcecode) in Datei schreiben sol RookieXL2 PHP für Fortgeschrittene und Experten 2 08.06.2007 23:58:33
fehler beim versenden von html eMails zorromaus PHP Grundlagen 0 09.07.2006 16:54:13
Fehler beim Auflösen einer Session Datei in ein Array Stardust PHP für Fortgeschrittene und Experten 3 09.12.2005 20:21:09
HTML Validator BeneBaur HTML, CSS und JavaScript Help! 1 20.11.2003 22:12:43


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:40:01 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt