Yvanoph Karim Modérateur ABC du Web Karim Yvanoph WebMaster 3Alannet webmaster@abc-du-web.com BP 116 7080 Menzel JEMIL Gouvernorat de BIZERTE Tunisie Yvanoph www.abc-du-web.com 0021625332209
Retour à l'Accueil du Mode d'Emploi du Forum XWebDesignor ?
   Accueil   Aide Rechercher Tags Identifiez-vous Inscrivez-vous  
Pages: [1]   Bas de page
  Imprimer  
Auteur Fil de discussion: [php] / [html] - Mélange des genres, ATTENTION ... plantage GARANTI ! ! !  (Lu 60686 fois)
yvanoph
Administrator
Hero Member
*****
Hors ligne Hors ligne

Messages: 2 818


Le PIRE des défauts, ne pas RECONNAÎTRE une erreur


Voir le profil WWW
« le: Mer. 18 Mars 2015 à 02:54:30 »

Jusqu'à preuve du contraire, php est un langage dédié à la gestion de Bases de Données, dit autrement par le biais de quelques fonctions d'accéder à une #DB puis jouer les rôles de LDD et LMD dans un SGBDR, sans plus...

En fait ni plus ni moins que ce que vous pouvez faire directement vous même dans une #DB installée sur votre machine, ou même une simple Feuille #Excel comme autrefois avec #Access, #Oracle, #Delphi ou autre ?

Et JAMAIS NI PLUS NI MOINS ! ! ! Enfin ... moins, si ... c'est possible, il suffit juste de ne rien faire ?
Ou d'écrire des trucs tordus ou avec une logique illogique, d'où des défauts de résultats ou PIRE de fonctionnement.


Alors quand je lis avec HORREUR dans un "Forum" la réponse d'un PROfessionnel, je HURLE "Au FOU" ! (Cf. Image ci dessous... INCROYABLE, mais VRAI ! ! !)

En effet, question élémentaire de sécurité, php n'exécutera JAMAIS une fonction coté Client, donc #Machine du #Visiteur, comme ouvrir une Page en "_blank" ou en "_top" ? ? ?
Il ne manquerait plus que ce genre de débilité existe pour que tous les pirates s'y précipitent pour faire n'importe quoi chez n'importe qui, car il existe déjà suffisamment de possibilités pour arriver à détourner quoi que ce soit de son but initial, et l'absence de Sécurité dans TOUS Réseaux, quel qu'il soit, restera toujours le point faible de l'Informatique !


Alors, pour les NEUNEU qui ne le sauraient pas encore ou auraient oublié des Bases pourtant élémentaires, php s'exécute coté #SERVEUR et ne renverra jamais QUE des données, alors que html, javascript etc. ne s'exécuteront eux que coté CLIENT !
En clair, une valeur "_top" pour un attribut "target" d'un #Lien ne pourra être comprise que par de l'html sinon être renvoyé sous la forme d'une Commande exécutée par #JavaScript par exemple ? Mais JAMAIS par php directement, pffff...

Dit autrement, ce genre de #Code :

header("location: Accueil.html target=_top");

restera toujours un #Code INFÂME qui ne devrait même jamais seulement être écrit ? ? ?


Fort de cette évidence, un BON #Code à insérer par exemple et s'exécutant coté Client pour ouvrir une nouvelle Fenêtre (OU nouvel Onglet selon les Paramètres du #Navigateur du #Visiteur...) serait donc :

<script type='textjavascript'>blank.location.href='./index.php'</script>

soit, inséré via un "echo" conventionnel (Qui demandera au #Navigateur d'exécuter son #Code, donc BIEN coté CLIENT ?), ce qui nous donnera :

echo "<script type=\"textjavascript\">blank.location.href=\"./index.php\"</script>";

et, dans le cas qui est demandé :

echo "<script type='textjavascript'>top.location.href='./index.php'</script>"; ?


A noter les \" remplacés par des ' afin de diminuer le poids du Code, voire même le simplifier, et interprété tout aussi rapidement par le #Navigateur, sous réserve de ne pas se tromper dans les paires...

A NOTER, employer des ' / apostrophes en php présente un RISQUE évident, ce #Caractère ayant des propriétés très particulières dans ce #Langage, d'où risque de PLANTAGE quasi garanti ?
Donc autant échapper consciencieusement des trémas comme cela \" Bien bien ! ?


Rappel de quelques règles de Base...

TOUTES "<Balise>" (Hors les exceptions CONNUES...) DOIVENT être refermées par la même "</Balise>" dans l'ordre exactement inverse de l'ouverture !

La Commande echo "blablabla"; employant des trémas pour délimiter son Contenu TEXTE oblige soit à échapper tous les trémas CONTENUS DANS son texte soit à les remplacer par des apostrophes sinon la lecture du texte cessera au premier apostrophe trouvé !

De même si un antislash \ est un Caractère et NON un échappement quelconque, il devra lui même être échappé...


Bref, cisaillé à la base je reste de voir certaines choses, Yvanoph---

Journalisée

La théorie, c'est quand on sait tout mais qu'absolument rien ne fonctionne !

La pratique, c'est quand tout fonctionne "farpaitement" sans vraiment savoir pourquoi, ni d'ailleurs  chercher à comprendre...

Chance inouïe, ici théorie et pratique fonctionnent  !
Tags: php html php: Code html: Code php: Usage html: Usage php: Normes html: Normes 
Pages: [1]   Haut de page
  Imprimer  
 
Aller à:  

Propulsé par MySQL Propulsé par PHP Powered by SMF 1.1.20 | SMF © 2013, Simple Machines
Soutenir Yvanoph par un Don ?
Boréal - V 1.0 by Yvanoph | Sitemap
XHTML 1.0 Transitionnel valide ! CSS valide !
Page générée en 0.063 secondes avec 21 requêtes.