deichgraf17
Goto Top

Seitenanzeige falsch, bei anderer SQL Abfrage

Guten Tag,

ich habe ein kleines Problem, deren Ursprung sich mir schleierhaft ist.

Ich habe in meiner Datenbank die vorgabe_it_ipadr wo die IP-Adressen meiner Netzwerkrechner aufgelistet sind, unterteilt nach Oktetten.

Starte ich nun die Abfrage nach dem 3. Oktett ist auch alles wunderbar. Allerdings möchte ich auch eine Gesamtübersicht haben, die ich
leicht produzieren kann, indem ich nach dem 1. Oktett suche. Dieses ist nämlich bei allen gleich.
Allerdings haut er mir dann die Ansicht in Firefox nach rechts und im IE6 nach unten.

Hier der Quelltext.

<?php
--------------------- IP Adressen und LW-Sperrungen -----------------

Nur IP's anzeigen, auf die man auch mind. Lese-Rechte hat (it_read)Freie IP-Adressen werden nur den Nutzern angezeigt, die an 1. Stelle ihrer Zugangsberechtigung ein I haben - ergo ADMIN S6Abt
if ($_SESSION['zugriff'] == 'I'){
$sql = 'SELECT * FROM vorgabe_it_ipadr WHERE 3_okt = "12"
ORDER BY 3_okt ASC, 4_okt ASC';

$result = mysql_query($sql);
$ipadr = mysql_fetch_array($result);
}
else {
$sql = 'SELECT * FROM vorgabe_it_ipadr WHERE
(bereich LIKE \'%' . $_SESSION['it_read'] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][1] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][2] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][3] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][4] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][5] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][6] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][7] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][8] . '%\')
OR (bereich LIKE \'%' . $_SESSION['it_read'][9] . '%\')';

$result = mysql_query($sql);
$ipadr = mysql_fetch_array($result);
}
echo '
<table cellspacing="0" cellpadding="0" border="2" width="95%" align="center">
<thead>
<tr>
<th class="head">IP-Adressen-Verteilung
</th>
</tr>
</thead>
<tfoot>
<tr>
<td class="foot">IP-Adressbereich</td>
</tr>
</tfoot>
<tbody class="test">
<tr>
<td height="400px" style="vertical-align: top;">';

echo '<table align = "center" cellpadding="2" cellspacing="1" border="0" width="50%">
<thead>
<tr>';
echo '<th class="block2" rowspan="2" width="100px">IP-Adresse</th>';
echo '<th class="block2" rowspan="2">Geräte-Name</th>';
echo '<th class="block2" rowspan="2">Bereich</th>';
echo '</tr><tr>';
echo '</tr>';
echo '</thead>
<tfoot>
<tr>
<td colspan="11"></td>
</tr>
</tfoot>
<tbody class="test">';

$liste = 'B';
$i = 1;
do {


----------------------- Material --------------------------------------------
--- Werte von verknüpften Tabellen in Variablen schreiben --------------------

$it_netzwerk = mysql_fetch_array(mysql_query('SELECT * FROM it_netzwerk WHERE ip_id = ' . $ipadr['id'] . ''));
if ($it_netzwerk != ''){
$sql_itmat = mysql_fetch_array(mysql_query('SELECT * FROM it_material WHERE id = ' . $it_netzwerk['id'] . ''));
if ($sql_itmat != ''){

}
}
else {
$sql_itmat = '';
$sql_dnstgrd = '';
$sql_dnstgrdZ = '';
}

echo '<tr>
<td class="liste' . $liste . '">';

echo '' . $ipadr['1_okt'] . '.'
. $ipadr['2_okt'] . '.'
. $ipadr['3_okt'] . '.'
. $ipadr['4_okt'] . '';

echo '</td><td class="liste' . $liste . '">';
if ($it_netzwerk['name'] == '' && $sql_itmat['id'] != '') {
$it_netzwerk['name'] = '<span style="color: red; font-weight: bold;">keine Angabe</span>';
}
echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='
. $sql_itmat['id'] . '">' . $it_netzwerk['name'] . '</a>';
echo '</td>';
echo '</td>';
if ($sql_itmat['id'] == ''){
echo '&nbsp;';
}

echo '<td class="liste' . $liste . '" style="font-size: 10px;">' . $ipadr['bemerkung'] . '</td>';
echo '<td></td>';
if ($i ==1)
{
echo '<th class="block2" width="100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bereich</a></th>';
}
if ($i==3)
{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip19er" style="color:white">19-Bereich</th>';
}
if ($i ==5)
{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip20er" style="color:white">20-Bereich</th>';
}
if ($i ==7)
{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip25er" style="color:white">25-Bereich</th>';
}
if ($i ==9)
{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip26er" style="color:white">26-Bereich</th>';
}

echo '</tr>';
if ($liste == 'A') {$liste = 'B';}
else {$liste = 'A';}
$i = $i + 1 ;
} while ($ipadr = mysql_fetch_array($result));
echo '</td></tr></tbody></table>';
?>

Trage ich in Zeile 7 nun ein, dass er mir aus dem 1. Oktett die Liste zusammenstellen soll, kommt wie gesagt das Anzeigeproblem.
Nun die Frage: Wie kann ich nach mehreren Werten aus Oktett 3 suchen lassen, oder ihm sagen, dass es mir reicht, wenn da überhaupt
ein Wert drin steht?
Ich habe diverse Dinge versucht, dann behauptet er, in Zeile 70 wäre ein Fehler.

$it_netzwerk = mysql_fetch_array(mysql_query('SELECT * FROM it_netzwerk WHERE ip_id = ' . $ipadr['id'] . ''));


[Edit Biber] Hier noch einmal der Quelltext als Code formatiert. [/Edit]

<?php
//--------------------- IP Adressen und LW-Sperrungen -----------------//

//Nur IP's anzeigen, auf die man auch mind. Lese-Rechte hat (it_read) 
//Freie IP-Adressen werden nur den Nutzern angezeigt, die an 1. Stelle ihrer Zugangsberechtigung ein I haben - ergo ADMIN S6Abt
if ($_SESSION['zugriff'] == 'I'){  
$sql = 'SELECT * FROM vorgabe_it_ipadr WHERE 3_okt = "12"  
    ORDER BY 3_okt ASC, 4_okt ASC';  

$result = mysql_query($sql);
$ipadr = mysql_fetch_array($result);
}
else {
$sql = 'SELECT * FROM vorgabe_it_ipadr WHERE   
       (bereich LIKE \'%' . $_SESSION['it_read'] . '%\')   
     OR (bereich LIKE \'%' . $_SESSION['it_read'][1] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][2] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][3] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][4] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][5] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][6] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][7] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][8] . '%\')  
     OR (bereich LIKE \'%' . $_SESSION['it_read'][9] . '%\')';  

$result = mysql_query($sql);
$ipadr = mysql_fetch_array($result);
}
echo '  
  <table cellspacing="0" cellpadding="0" border="2" width="95%" align="center">  
    <thead>
     <tr>
      <th class="head">IP-Adressen-Verteilung  
      </th>
     </tr>
    </thead>
    <tfoot>
     <tr>
      <td class="foot">IP-Adressbereich</td>  
     </tr>
    </tfoot>
    <tbody class="test">  
     <tr>
      <td height="400px" style="vertical-align: top;">';  
       
echo '<table align = "center" cellpadding="2" cellspacing="1" border="0" width="50%">  
         <thead>
          <tr>';  
echo '<th class="block2" rowspan="2" width="100px">IP-Adresse</th>';  
echo '<th class="block2" rowspan="2">Geräte-Name</th>';   
echo '<th class="block2" rowspan="2">Bereich</th>';  
echo '</tr><tr>';  
echo '</tr>';  
echo '</thead>  
     <tfoot>
        <tr>
        <td colspan="11"></td>  
      </tr>
     </tfoot>
    <tbody class="test">';  

$liste = 'B';  
$i = 1;
do {


//----------------------- Material --------------------------------------------//
//--- Werte von verknüpften Tabellen in Variablen schreiben --------------------//

$it_netzwerk = mysql_fetch_array(mysql_query('SELECT * FROM it_netzwerk WHERE ip_id = ' . $ipadr['id'] . ''));  
if ($it_netzwerk != ''){  
    $sql_itmat = mysql_fetch_array(mysql_query('SELECT * FROM it_material WHERE id = ' . $it_netzwerk['id'] . ''));  
    if ($sql_itmat != ''){  

    }
}
else {
$sql_itmat = '';  
$sql_dnstgrd = '';  
$sql_dnstgrdZ = '';  
}

    echo '<tr>  
	<td class="liste' . $liste . '">';  

        echo '' . $ipadr['1_okt'] . '.'  
                . $ipadr['2_okt'] . '.'  
                . $ipadr['3_okt'] . '.'  
                . $ipadr['4_okt'] . '';  

    echo '</td><td class="liste' . $liste . '">';  
    if ($it_netzwerk['name'] == '' && $sql_itmat['id'] != '') {  
        $it_netzwerk['name'] = '<span style="color: red; font-weight: bold;">keine Angabe</span>';  
    }
    echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='  
        . $sql_itmat['id'] . '">' . $it_netzwerk['name'] . '</a>';  
    echo '</td>';  
    echo '</td>';  
    if ($sql_itmat['id'] == ''){  
      echo '&nbsp;';  
    }
      
    echo '<td class="liste' . $liste . '" style="font-size: 10px;">' . $ipadr['bemerkung'] . '</td>';  
		echo '<td></td>';	  
	if ($i ==1)
	{
echo '<th class="block2" width="100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bereich</a></th>';  
	}
		if ($i==3)
	{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip19er" style="color:white">19-Bereich</th>';  
	}
		if ($i ==5)
	{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip20er" style="color:white">20-Bereich</th>';  
	}
					if ($i ==7)
	{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip25er" style="color:white">25-Bereich</th>';  
	}
				if ($i ==9)
	{
echo '<th class="block2" width="100px"><a href="index.php?content=itg&itg=ip26er" style="color:white">26-Bereich</th>';  
	}
		
echo '</tr>';  
  if ($liste == 'A') {$liste = 'B';}  
  else {$liste = 'A';}    
   $i = $i + 1 ;
} while ($ipadr = mysql_fetch_array($result));
echo '</td></tr></tbody></table>';  
?>

Content-Key: 171462

Url: https://administrator.de/contentid/171462

Ausgedruckt am: 28.03.2024 um 08:03 Uhr

Mitglied: dog
dog 14.08.2011 um 14:35:34 Uhr
Goto Top
Mitglied: Deichgraf17
Deichgraf17 18.08.2011 um 09:33:49 Uhr
Goto Top
Gut, hab versucht das mal durchzujuckeln, habe auch eine Menge Fehler angezeigt bekommen.
Allerdings habe ich von programmieren ungefähr so viel Ahnung wie von Golf, nämlich gar keine.
Ich werde diese Woche wohl nicht mehr dazu kommen, dass selbst genau zu untersuchen.
Also falls jemand Zeit und Lust hat, wäre ich sehr verbunden.

Ich melde mich nochmal, wenn ich die Zeit bekommen habe, mich dessen mal anzunehmen...

Notes and Potential Issues

The following notes and warnings highlight missing or conflicting information which caused the validator to perform some guesswork prior to validation, or other things >>affecting the output below. If the guess or fallback is incorrect, it could make validation results entirely incoherent. It is highly recommended to check these potential >>issues, and, if necessary, fix them and re-validate the document.

Warning No Character Encoding Found! Falling back to windows-1252.

None of the standards sources gave any information on the character encoding labeling for this document. Without encoding information it is impossible to reliably >>validate the document. As a fallback solution, the "windows-1252" encoding was used to read the content and attempt to perform the validation, but this is likely to fail for >>all non-trivial documents.

Before defaulting to windows-1252 the validator also tried to read the content with the following encoding(s), without success: UTF-8.

Read the FAQ entry on character encoding for more details and pointers on how to fix this problem with your document.

Warning Unable to Determine Parse Mode!

The validator can process documents either as XML (for document types such as XHTML, SVG, etc.) or SGML (for HTML 4.01 and prior versions). For this document, >>the information available was not sufficient to determine the parsing mode unambiguously, because:
the MIME Media Type (text/html) can be used for XML or SGML document types
No known Document Type could be detected
No XML declaration (e.g <?xml version="1.0"?>) could be found at the beginning of the document.
No XML namespace (e.g <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">) could be found at the root of the document.

As a default, the validator is falling back to SGML mode.

Warning No DOCTYPE found, and unknown root element. Aborting validation.

The DOCTYPE Declaration was not recognized or is missing. This probably means that the Formal Public Identifier contains a spelling error, or that the Declaration is >>not using correct syntax, or that your document is not using a DOCTYPE Declaration.

Without a DOCTYPE Declaration it is not possible to check the validity of your document. Since the document does not start with the root <html> element, automatic >>fallback to an HTML document type was not performed, and most of the validation process was aborted: only basic markup syntax was checked.

Learn how to add a doctype to your document from our FAQ, or use the validator's Document Type option to validate your document against a specific Document Type.

Info No Character encoding declared at document level

No character encoding information was found within the document, either in an HTML meta element or an XML declaration. It is often recommended to declare the >>character encoding in the document itself, especially if there is a chance that the document will be read from or saved to disk, CD, etc.

See this tutorial on character encoding for techniques and explanations.

↑ Top
Validation Output: 18 Errors

Error Line 31, Column 5: no document type declaration; will parse without validation

<thead>


The document type could not be determined, because the document had no correct DOCTYPE declaration. The document does not look like HTML, therefore >>automatic fallback could not be performed, and the document was only checked against basic markup syntax.

Learn how to add a doctype to your document from our FAQ, or use the validator's Document Type option to validate your document against a specific Document Type.
Error Line 37, Column 11: document type does not allow element "TFOOT" here

>> <tfoot>

>> ✉

The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in >>the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading >>effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the >>"head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).
Error Line 42, Column 24: document type does not allow element "TBODY" here

>> <tbody class="test">

>> ✉

The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in >>the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

>> One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading >>effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the >>"head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).
>> Warning Line 95, Column 57: cannot generate system identifier for general entity "amp"

>> echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='



>> An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded >>ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in >>"Ampersands in URLs".

Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" >>(even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in >>mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.

If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.

>> Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the >>original problem is fixed.
>> Error Line 95, Column 57: general entity "amp" not defined and no default entity

echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='



>> This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
>> Error Line 95, Column 60: reference to entity "amp" for which no system identifier could be generated

echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='

>> ✉

This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
>> Info Line 95, Column 56: entity was defined here

>> echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='

>> Error Line 95, Column 73: reference to entity "amp" for which no system identifier could be generated

>> echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='



This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 95, Column 56: entity was defined here

>> echo '<a class="liste3" href="index.php?content=itg&amp;itg=info&amp;id='

Warning Line 100, Column 14: cannot generate system identifier for general entity "nbsp"

echo '&nbsp;';



An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded >>ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in >>"Ampersands in URLs".

Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" >>(even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in >>mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.

If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.

Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the >>original problem is fixed.
Error Line 100, Column 14: general entity "nbsp" not defined and no default entity

>> echo '&nbsp;';



This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
>> Error Line 100, Column 18: reference to entity "nbsp" for which no system identifier could be generated

>> echo '&nbsp;';

>> ✉

This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 100, Column 13: entity was defined here

echo '&nbsp;';

Warning Line 107, Column 72: cannot generate system identifier for general entity "itg"

…00px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Berei…



An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded >>ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in >>"Ampersands in URLs".

Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" >>(even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in >>mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.

If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.

Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the >>original problem is fixed.
Error Line 107, Column 72: general entity "itg" not defined and no default entity

…00px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Berei…

>> ✉

This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message >>for further details.
Error Line 107, Column 75: reference to entity "itg" for which no system identifier could be generated

…x"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bereich<…



This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 107, Column 71: entity was defined here

>> …100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bere…

Error Line 111, Column 74: reference to entity "itg" for which no system identifier could be generated

>> …px"><a href="index.php?content=itg&itg=ip19er" style="color:white">19-Bereich<…



This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 107, Column 71: entity was defined here

>> …100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bere…

>> Error Line 115, Column 74: reference to entity "itg" for which no system identifier could be generated

…px"><a href="index.php?content=itg&itg=ip20er" style="color:white">20-Bereich<…



>> This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 107, Column 71: entity was defined here

>> …100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bere…

Error Line 119, Column 74: reference to entity "itg" for which no system identifier could be generated

…px"><a href="index.php?content=itg&itg=ip25er" style="color:white">25-Bereich<…



>> This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 107, Column 71: entity was defined here

…100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bere…

>> Error Line 123, Column 74: reference to entity "itg" for which no system identifier could be generated

…px"><a href="index.php?content=itg&itg=ip26er" style="color:white">26-Bereich<…



This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous >>message for further details.
Info Line 107, Column 71: entity was defined here

…100px"> <a href="index.php?content=itg&itg=ip12er" style="color:white">12-Bere…

>> Error Line 144, Column 11: end tag for element "TD" which is not open

echo '</td></tr></tbody></table>';


The Validator found an end tag for the above element, but that element is not currently open. This is often caused by a leftover end tag from an element that was >>removed during editing, or by an implicitly closed element (if you have an error related to an element being used where it is not allowed, this is almost certainly the >>case). In the latter case this error will disappear as soon as you fix the original problem.

If this error occurred in a script section of your document, you should probably read this FAQ entry.
Error Line 144, Column 16: end tag for element "TR" which is not open

echo '</td></tr></tbody></table>';

>> ✉

The Validator found an end tag for the above element, but that element is not currently open. This is often caused by a leftover end tag from an element that was >>removed during editing, or by an implicitly closed element (if you have an error related to an element being used where it is not allowed, this is almost certainly the >>case). In the latter case this error will disappear as soon as you fix the original problem.

If this error occurred in a script section of your document, you should probably read this FAQ entry.
>> Error Line 144, Column 32: end tag for element "TABLE" which is not open

echo '</td></tr></tbody></table>';



The Validator found an end tag for the above element, but that element is not currently open. This is often caused by a leftover end tag from an element that was >>removed during editing, or by an implicitly closed element (if you have an error related to an element being used where it is not allowed, this is almost certainly the >>case). In the latter case this error will disappear as soon as you fix the original problem.

If this error occurred in a script section of your document, you should probably read this FAQ entry.
Error Line 144, Column 33: character data is not allowed here

echo '</td></tr></tbody></table>';



You have used character data somewhere it is not permitted to appear. Mistakes that can cause this error include:
putting text directly in the body of the document without wrapping it in a container element (such as a <p>aragraph</p>), or
forgetting to quote an attribute value (where characters such as "%" and "/" are common, but cannot appear without surrounding quotes), or
using XHTML-style self-closing tags (such as <meta ... />) in HTML 4.01 or earlier. To fix, remove the extra slash ('/') character. For more information about the reasons >>for this, see Empty elements in SGML, HTML, XML, and XHTML.