• 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

    • Exactly. They won't go 100 because current gen consoles are simply too old for any groundbreaking graphics or gaming experience otherwise. They will go with standard (console) price 70 or go with 80 if they really want to go premium. Of course they will have more expensive options too with some useless cosmetics as always.
    • Doesn’t surprise me at all. God is light & He gave us life so it sounds almost logical that we would therefore emit a certain amount of light.
    • This is what I want. Hey Gemini, how do I remove you from all my google products permanently?
    • I would never install install this build before rtm process. only 3 months to go. never install on your daily devices. just wait 3 months.
    • Motrix Next 3.9.6 by Razvan Serea Motrix Next is a modern, open-source cross-platform download manager built as the official next-generation successor to the original Motrix project. It has been completely rewritten using Tauri 2, Vue 3, TypeScript, and Rust, while still relying on the powerful Aria2 download engine for high-speed multi-protocol transfers. The app supports HTTP, HTTPS, FTP, BitTorrent, ED2K and magnet links, offering advanced features like multi-connection acceleration, task scheduling, bandwidth control, and batch download management. With a significantly reduced install size (around 20MB), it focuses on being lightweight, fast, and resource-efficient compared to traditional Electron-based download tools. Designed for Windows, macOS, and Linux, Motrix Next delivers a clean, modern UI inspired by Material Design 3 principles, with smooth animations and a minimal workflow. It improves usability through better download organization, system tray integration, and enhanced torrent handling including selective file downloads and tracker management. Motrix Next features: Multi-protocol downloads — HTTP, FTP, BitTorrent, Magnet, .torrent, ED2K, and Metalink tasks BitTorrent — Selective file download, DHT, peer exchange, encryption controls, metadata caching, GeoIP peer flags, and tracker probing Browser extension integration — Embedded Extension API with independent authentication, download confirmation, smart auto-submit, filename hints, referer/cookie forwarding, and real-time controls (Chrome Web Store · Edge Add-ons) Safe filename handling — Content-Disposition, RFC 2047, non-UTF-8, percent-encoded, and extensionless URL resolution with path traversal sanitization Download organization — Favorite and recent folders, optional file-type categorization, stale-record cleanup, and completed history backed by SQLite Concurrent downloads — Independent controls for active tasks, HTTP connections per server, segments per file, and BT peer limits Speed control — Global and per-task upload/download limits with day-of-week and time-of-day scheduling System integration — Tray operation, optional tray speed display, macOS Dock badge/progress, protocol handlers for magnet://, thunder://, and motrixnext:// Lightweight mode — Destroys the WebView on minimize-to-tray while Rust keeps the engine, task monitor, notifications, history, and extension routing alive Notifications and power options — Native task start/complete/failure notifications, keep-awake during downloads, and optional shutdown after completion Network controls — Scoped proxy support for downloads, app updates, and tracker updates, plus system proxy detection Auto-update channels — Stable, Beta, and Latest Across Channels policies with separate download and install phases Diagnostics — Structured logs, exportable diagnostic ZIPs, database integrity checks, automatic DB rebuild, and Linux GPU rendering fallback Personalization — Light/dark/system theme, 10 color schemes, 26 languages, and first-launch system language detection Motrix Next 3.9.6 changelog: New Features Clipboard management — App-owned copy actions no longer trigger the Add Task auto-detect popup. aria2 input compatibility — Multi-line aria2-style task input is supported for URLs with per-task options such as out=. BitTorrent IPv6 DHT — Added IPv6 DHT support and related configuration. File category URL patterns — File category rules can match URL patterns with validation and localized hints. Task status tags — Added clearer waiting and sharing states for task cards. Download event bridge — Added an aria2 WebSocket event bridge for faster download notifications. Improvements Improved task list transitions and preserved task state during tab switches. Kept RPC origin access enabled for local integrations. Restored AppImage stripping in release builds after beta validation. Added localized preference guidance across supported languages. Download: Motrix Next 64-bit | ARM64 | macOS ~20.0 MB (Open Source) Links: Website | macOS / Linux | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
  • Recent Achievements

    • Conversation Starter
      sumytbe earned a badge
      Conversation Starter
    • One Year In
      B4dM1k3 earned a badge
      One Year In
    • One Year In
      DarkWun earned a badge
      One Year In
    • Dedicated
      Almohandis earned a badge
      Dedicated
    • Dedicated
      JuvenileDelinquent earned a badge
      Dedicated
  • Popular Contributors

    1. 1
      +primortal
      508
    2. 2
      +Edouard
      181
    3. 3
      PsYcHoKiLLa
      86
    4. 4
      Michael Scrip
      78
    5. 5
      Steven P.
      75
  • Tell a friend

    Love Neowin? Tell a friend!