• 0

Is it Standards Compliant to mix HTML and PHP?


Question

21 answers to this question

Recommended Posts

  • 0

What standard are you talking about? If you're asking about HTML standards then it doesn't matter what server side technology (PHP, ASP.net, Python) is used because the clients browser doesn't receive it, only the output of those programs/scripts.

  • 0

What standard are you talking about? If you're asking about HTML standards then it doesn't matter what server side technology (PHP, ASP.net, Python) is used because the clients browser doesn't receive it, only the output of those programs/scripts.

I am talking about HTML standards. I just want to make sure that it remains fully compliant. I am working on a CMS and being able to mix the two will make it much easier to create the system. Also, would you recommend that route or maybe using AJAX to implement it? It will be a basic CMS system, but I want it to be able to refresh content on the page without redirecting the user.

  • 0

Me thinks you've got your terms a bit mixed up. PHP will generate HTML, you won't see the PHP in the final markup. HTML standards compliance is a bit of a mixed bag these days, in general people are more concerned about making sure the markup works cross browser than strict adherence to standard, mostly because a lot of HTML 5 features aren't standardized yet.

The main thing to do when using PHP to generate HTML is to separate out the logic from the markup, so that if someone else wanted to redesign or reuse the HTML code, they wouldn't have to sort out all of the PHP to do so.

  • Like 1
  • 0

Me thinks you've got your terms a bit mixed up. PHP will generate HTML, you won't see the PHP in the final markup. HTML standards compliance is a bit of a mixed bag these days, in general people are more concerned about making sure the markup works cross browser than strict adherence to standard, mostly because a lot of HTML 5 features aren't standardized yet.

The main thing to do when using PHP to generate HTML is to separate out the logic from the markup, so that if someone else wanted to redesign or reuse the HTML code, they wouldn't have to sort out all of the PHP to do so.

Ok, so something like:


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>PHP Standards Compliant Test</title>
</head>
<body>
<?php require 'form.php';?>
</body>
</html>
[/CODE]

Is that what you mean?

  • 0

Ok, so something like:


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>PHP Standards Compliant Test</title>
</head>
<body>
<?php require 'form.php';?>
</body>
</html>
[/CODE]

Is that what you mean?

We can't tell you if it's standard or not cause we don't know what html code the form.php page will generate.

To know if it's standard load the page in Firefox like a client would do and Validate it using a validator.

  • 0

Ok, so something like:


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>PHP Standards Compliant Test</title>
</head>
<body>
<?php require 'form.php';?>
</body>
</html>
[/CODE]

Is that what you mean?

More likely you'd include the form in the HTML, do simple validation with javascript, and use AJAX to send the results to a php file which handles it, then sends some information back which is processed through javascript, with a fallback to do that without javascript.

The way you have it there's probably a form with HTML markup stuck with PHP code.

  • 0

More likely you'd include the form in the HTML, do simple validation with javascript, and use AJAX to send the results to a php file which handles it, then sends some information back which is processed through javascript, with a fallback to do that without javascript.

The way you have it there's probably a form with HTML markup stuck with PHP code.

Ok, so the way that I originally wrote my code would probably be best then? Here is what I had:

news.html:

http://pastebin.com/rB9WgnD2[

ajax.js:

http://pastebin.com/9k1FJq5G

news.php:

http://pastebin.com/dfPtPL6h

  • 0

Just an FYI, alternative syntax makes mixing PHP and HTML easier:

[color=#000000][color=#0000BB]<?php while[/color][color=#007700]([/color][color=#0000BB]$a [/color][color=#007700]== [/color][color=#0000BB]5[/color][color=#007700]): [/color][color=#0000BB]?>[/color]
A is equal to 5
[color=#0000BB]<?php endwhile[/color][color=#007700]; [/color][color=#0000BB]?>[/color] [/color] [/CODE]

also mysql_connect is not a good start... look into mysqli and prepared statements.

Ok, thank you!

  • 0

I decided to proceed with writing my own very basic cms because I don't require a lot of features right away and I want full control of the code. I want to be able to control every aspect of how the system works and have full freedom to modify it. I just have one more quick question. Is it wise to use just one news.js and news.php script and have each page that is displaying news pass in its own category? If not, what would you recommend to generate each page's news? I appreciate all of your help.

  • 0

I decided to proceed with writing my own very basic cms because I don't require a lot of features right away and I want full control of the code. I want to be able to control every aspect of how the system works and have full freedom to modify it. I just have one more quick question. Is it wise to use just one news.js and news.php script and have each page that is displaying news pass in its own category? If not, what would you recommend to generate each page's news? I appreciate all of your help.

Just FYI, if this is for fun, or to learn something, go right ahead. If this is going to end up on the web in some way... I'd argue it's a terrible idea. Basically, you have full control over any framework or CMS if you want it, but you also get the advantage of having someone track down bugs / build in security / make things easier for you, and provide an update path, which is fairly important in PHP.

As for your second question, yes, one script or function will always be better than multiples of them doing the same thing.

  • 0

Just FYI, if this is for fun, or to learn something, go right ahead. If this is going to end up on the web in some way... I'd argue it's a terrible idea. Basically, you have full control over any framework or CMS if you want it, but you also get the advantage of having someone track down bugs / build in security / make things easier for you, and provide an update path, which is fairly important in PHP.

As for your second question, yes, one script or function will always be better than multiples of them doing the same thing.

Ok, thank you. I appreciate the help. It is actually for a church website that I am developing. Are there any good tutorials related for drupal in that case. I have no clue where to even begin. It has to be able to integrate with my website theme as well.

  • 0

Drupal's documentation is pretty good. It might help to pick up a book (I've read through this one, it's good, but save some money and get an e-version) as it will have a good explanation of using views.

Just to clarify, I suggested Drupal because it looked like you were planning on display a lot of information drawn from a database, which Views is great for. I find Wordpress to be easier to use if you're just dealing with posts / pages. Either can be themed, and you can set up a child theme from a template to get up and running faster.

  • 0

Drupal's documentation is pretty good. It might help to pick up a book (I've read through this one, it's good, but save some money and get an e-version) as it will have a good explanation of using views.

Just to clarify, I suggested Drupal because it looked like you were planning on display a lot of information drawn from a database, which Views is great for. I find Wordpress to be easier to use if you're just dealing with posts / pages. Either can be themed, and you can set up a child theme from a template to get up and running faster.

I am planning to display a lot of information actually. It is going to build up over time and consist of news, blog posts, and occasionally a letter from the pastor. In depth content management is very important. If I can get this to work well, it will free up a lot of time for me to create other custom components. Hopefully I can figure out Drupal and make it fit into my site.

  • 0

I am planning to display a lot of information actually. It is going to build up over time and consist of news, blog posts, and occasionally a letter from the pastor. In depth content management is very important. If I can get this to work well, it will free up a lot of time for me to create other custom components. Hopefully I can figure out Drupal and make it fit into my site.

OK... then I would actually suggest Wordpress. :D It will be easier to theme, and easier to get others to add content to if that is ever the case in the future. For that I would recommend a book, as the Wordpress documentation can drive you crazy sometimes, although perhaps someone else can chime in with a good one, as I've sort of picked it up over time.

Drupal is better if you had, for example, a database of all the events for multiple churches in an area, and you wanted to be able to sort the events and see who was going to each event.

  • Like 1
  • 0

OK... then I would actually suggest Wordpress. :D It will be easier to theme, and easier to get others to add content to if that is ever the case in the future. For that I would recommend a book, as the Wordpress documentation can drive you crazy sometimes, although perhaps someone else can chime in with a good one, as I've sort of picked it up over time.

Drupal is better if you had, for example, a database of all the events for multiple churches in an area, and you wanted to be able to sort the events and see who was going to each event.

Well, after thorough research, it looks like I can't run drupal 7 on my godaddy hosting plan. I guess I am stuck coding it myself because I do need the site to be fully enabled for those advanced features at some point. It is going to continually evolve to include new features as time goes on. :) It isn't a news only site. That is just how it is going to be until I am able to add more to it.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • It sounds like you’re trying to rewrite a narrative to align this layoff with your political beliefs. Games can be horrible, whatever backwards notions you have don’t change that bungie has problems, mostly with just bad games, and arrogance. When they pushed Microsoft to let them be independent they lost their way. They hired on a bunch of people and they couldn’t justify the employee count consistent with their revenue.
    • Trying out Noctalia v5 on CachyOS  
    • Calibre 9.10 by Razvan Serea  Calibre is an open source e-book library management application that enables you to manage your e-book collection, convert e-books between different formats, synchronize with popular e-book reader devices, and read your e-books with the included viewer. It acts as an e-library and also allows for format conversion, news feeds to e-book conversion, as well as e-book reader sync features and an integrated e-book viewer. Calibre's features include: library management; format conversion (all major ebook formats); syncing to e-book reader devices; fetching news from the Web and converting it into ebook form; viewing many different e-book formats, giving you access to your book collection over the internet using just a browser. Calibre 9.10 changelog: New features Content server: A new "modern" interface with a sidebar to ease navigation Content server: When used with HTTPS allow installation as a PWA (Progressive Web App) Edit book: Saved searches: When filtering the list of saved searches match by keywords CSS parsing: Add support for CSS Level 4 selectors Cover grid: When using an image larger than the viewport as a texture scale it to fit the viewport Annotations browser: Allow restricting displayed annotations by custom annotation styles as well Edit book: Compress images: Add option to convert PNG images to JPEG or WEBP Bug fixes E-book viewer: Fix IME on Windows not working when typing in notes for highlights Conversion: Heuristics: Improve performance in some pathological cases SNB Input: Fix error on some input files Windows: fix rare crash when too many notifications are displayed at once Fix duplicating of books not duplicating value from enumerated columns when the column has a default value defined Fix a regression in 9.8 that caused errors from AI plugin providers to be silently swallowed and not displayed to user Fix CSV export invalid when exporting comments field Disallow Python templates when reading book metadata (CVE-2026-53511) Improved news sources The Week Economist Espresso Horizons Download: Calibre 9.10 | Portable | ~200.0 MB (Open Source) Download: Calibre for MacOS | 327.0 MB Download: Calibre for Linux View: Calibre Home Page | Calibre Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Malwarebytes Anti-Malware 5.6.1.257 by Razvan Serea Malwarebytes is a high performance anti-malware application that thoroughly removes even the most advanced malware and spyware. Malwarebytes version 5.**** brings comprehensive protection against today’s threat landscape so that you can finally replace your traditional antivirus. You can finally replace your traditional antivirus, thanks to a innovative and layered approach to prevent malware infections using a healthy combination of proactive and signature-less technologies. While signatures are still effective against threats like potentially unwanted programs, the majority of malware detection events already come from signature-less technologies like Malwarebytes Anti-Exploit and Malwarebytes Anti-Ransomware; that trend will only continue to grow. For many of you, this is something you already know, since over 50% of the users already run Malwarebytes as their sole security software, without any third-party antivirus. What's new in Malwarebytes 5.****: Unified user experience - For the first time, Malwarebytes now provides a consistent experience across all of our desktop and mobile products courtesy of an all new and reimagined user experience powered by a faster and more responsive UI all managed through an intuitive dashboard. Modern security and privacy integrations - Antivirus and ultra-fast VPN come together seamlessly in one easy-to-use solution. Whether you’re looking for a next-gen VPN to secure your online activity, or harnessing the power of Browser Guard to block ad trackers and scam sites, taking charge of your privacy is simple. Trusted Advisor - Empowers you with real-time insights, easy-to-read protection score and expert guidance that puts you in control over your security and privacy. Malwarebytes 5.6.1.257 changelog: Features and improvements Updated the sign-in section of the My Subscription page to clarify that users can activate their subscription by signing in with their Malwarebytes account. Updated the uninstall flow to collect more meaningful insights and address customer concerns. Refreshed the app's tutorial layout for a better look and feel. Issues fixed Fixed an outdated link when clicking Take action after running a Digital Footprint Scan. Miscellaneous bug fixes. Download: Malwarebytes 5.6.1.257 | 472.0 MB (Free, paid upgrade available) Links: Malwarebytes Website | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
  • Recent Achievements

    • Week One Done
      xvvxcvv earned a badge
      Week One Done
    • One Month Later
      xvvxcvv earned a badge
      One Month Later
    • Enthusiast
      Xonos went up a rank
      Enthusiast
    • Conversation Starter
      Admir earned a badge
      Conversation Starter
    • First Post
      The_Focal_Point earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      405
    2. 2
      +Edouard
      168
    3. 3
      PsYcHoKiLLa
      129
    4. 4
      neufuse
      69
    5. 5
      Xenon
      68
  • Tell a friend

    Love Neowin? Tell a friend!