Dan Cundy
Dan Cundy

Reputation: 2849

Code not validating, possible incorrect markup?

I'm having trouble Validating this code with W3C with doctype <!doctype html> which as far as i'm aware is the HTML5 doc type.

     <?php 
   echo "<img src='uploads/picture01.jpg?".filemtime ('uploads/picture01.jpg')."' class='img' alt='Bass Clef Photography Demo Picture One'/>";
   echo "<img src='uploads/picture02.jpg?".filemtime ('uploads/picture02.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Two'/>";
   echo "<img src='uploads/picture03.jpg?".filemtime ('uploads/picture03.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Three'/>";
   echo "<img src='uploads/picture04.jpg?".filemtime ('uploads/picture04.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Four'/>";
   echo "<img src='uploads/picture05.jpg?".filemtime ('uploads/picture05.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Five'/>";
   echo "<img src='uploads/picture06.jpg?".filemtime ('uploads/picture06.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Six'/>";
   echo "<img src='uploads/picture07.jpg?".filemtime ('uploads/picture07.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Seven'/>";
   echo "<img src='uploads/picture08.jpg?".filemtime ('uploads/picture08.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Eight'/>";

   ?>

The errors I am getting for each line are;

enter image description here

Generated Code,

<img src='uploads/picture01.jpg?1405031988' class='img' alt='Bass Clef Photography Demo Picture One'/>
<img src='uploads/picture02.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Two'/>
<img src='uploads/picture03.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Three'/>
<img src='uploads/picture04.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Four'/>
<img src='uploads/picture05.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Five'/>
<img src='uploads/picture06.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Six'/>
<img src='uploads/picture07.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Seven'/>
<img src='uploads/picture08.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Eight'/> 

NB. i've appended filetime to each image to stop browser caching of the images.

Upvotes: 0

Views: 66

Answers (2)

unor
unor

Reputation: 96597

The W3C Markup Validation Service checks if a document uses valid HTML.

You got the errors because you tried to validate a document that contains PHP: the validator tries to interpret it as HTML.

Solution: Validate the generated document (after PHP ran). You’ll see that your snippet is valid HTML5.

Upvotes: 1

Samsquanch
Samsquanch

Reputation: 9146

You are missing a closing ' after the image name:

<?php 
   echo "<img src='uploads/picture01.jpg?" .filemtime ('uploads/picture01.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture One'/>";
   echo "<img src='uploads/picture02.jpg?" .filemtime ('uploads/picture02.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Two'/>";
   echo "<img src='uploads/picture03.jpg?" .filemtime ('uploads/picture03.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Three'/>";
   echo "<img src='uploads/picture04.jpg?" .filemtime ('uploads/picture04.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Four'/>";
   echo "<img src='uploads/picture05.jpg?" .filemtime ('uploads/picture05.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Five'/>";
   echo "<img src='uploads/picture06.jpg?" .filemtime ('uploads/picture06.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Six'/>";
   echo "<img src='uploads/picture07.jpg?" .filemtime ('uploads/picture07.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Seven'/>";
   echo "<img src='uploads/picture08.jpg?" .filemtime ('uploads/picture08.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Eight'/>";

   ?>

EDIT: Swapping around the double and single quotes

<?php 
   echo '<img src="uploads/picture01.jpg?' .filemtime ('uploads/picture01.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture One" />';
   echo '<img src="uploads/picture02.jpg?' .filemtime ('uploads/picture02.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Two" />';
   echo '<img src="uploads/picture03.jpg?' .filemtime ('uploads/picture03.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Three" />';
   echo '<img src="uploads/picture04.jpg?' .filemtime ('uploads/picture04.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Four" />';
   echo '<img src="uploads/picture05.jpg?' .filemtime ('uploads/picture05.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Five" />';
   echo '<img src="uploads/picture06.jpg?' .filemtime ('uploads/picture06.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Six" />';
   echo '<img src="uploads/picture07.jpg?' .filemtime ('uploads/picture07.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Seven" />';
   echo '<img src="uploads/picture08.jpg?' .filemtime ('uploads/picture08.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Eight" />';

   ?>

Upvotes: 2

Related Questions