Aller au contenu

Qui veut me dire ce que c'est ?


jlb59

Sujets conseillés

Bonjour à tous,

J'ai validé mon site avec W3C et ai transféré les page après correction. Ô rage, Ô désespoir !

Le site n'est plus accessible, y a rien qui s'affiche (si j'avais su !).

Il y a de nombreux msg d'erreur du genre :

Warning: main(../css/header.html) [function.main]: failed to open stream: Operation not permitted in /mnt/163/sdb/9/3/qi98/index1.php on line 39

Je suis allé voir cette ligne qui contient ça :

function bookmarksite(title,url){

C'est pour rendre compatible entre les navigateurs.

Alors, je comprends plus parce que je n'ai fait aucune modif sur cette ligne.

Comme je l'avais expliqué, j'ai toujours une erreur <!DOCTYPE...

Pensant que cela venait de là (1 seule ligne)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

j'ai fait ça (2 lignes - comme les modèles)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

Je ne vois pas de différence à l'écriture, mais depuis cette modif sur toutes les pages, j'ai les erreurs citées plus haut.

QQ pourrait me dire ce qu'il faut faire ?

Merci d'avance.

Cordialement

JLB59

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Avec l'url de ton site, ça serait un peu plus facile pour nous de voir le résultat final... Si tu peux la donner, ça serait bien !

Le "Operation not permitted" me fait penser à une erreur de CHMOD... Quel est le CHMOD du fichier ../css/header.html ? (Existe t-il déjà, dans ton arborescence ?)

De plus, je suis pas certain que ça soit la bonne ligne qui soit donnée, mais plutôt ici le numéro de la fonction... Tu peux donner la fonction bookmarksite en entier ?

Voili voilà pour quelques pistes d'exploration. ;)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Avec l'url de ton site, ça serait un peu plus facile pour nous de voir le résultat final... Si tu peux la donner, ça serait bien !

Le "Operation not permitted" me fait penser à une erreur de CHMOD... Quel est le CHMOD du fichier ../css/header.html ? (Existe t-il déjà, dans ton arborescence ?)

De plus, je suis pas certain que ça soit la bonne ligne qui soit donnée, mais plutôt ici le numéro de la fonction... Tu peux donner la fonction bookmarksite en entier ?

Voili voilà pour quelques pistes d'exploration. ;)

Merci de ta réponse SARC, mais j'ai remis le DOCTYPE sur 1 seule ligne et là mes pages se réaffichent. :) Donc, ça venait de là !!!

Mais mon prb concernant une erreur détectée par W3C "<!DOCTYPE..." n'est toujours pas résolue ! :blush:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.or...

Modifié par jlb59
Lien vers le commentaire
Partager sur d’autres sites

Ca s'affiche justement parce que c'est pas valide, je pense... :P

Eh oui, quand on valide quelque chose, on doit être sûr que tout est bon derrière. Alors que quand on part sans valider, on s'en fiche un peu de pas être rigoureux dans la suite.

Tu ne veux vraiment pas donner les éléments que je t'avais demandés ? URL, fonction bookmarksite en entier, et CHMOD de tes fichiers... ?

Lien vers le commentaire
Partager sur d’autres sites

Ca s'affiche justement parce que c'est pas valide, je pense... :P

Eh oui, quand on valide quelque chose, on doit être sûr que tout est bon derrière. Alors que quand on part sans valider, on s'en fiche un peu de pas être rigoureux dans la suite.

Tu ne veux vraiment pas donner les éléments que je t'avais demandés ? URL, fonction bookmarksite en entier, et CHMOD de tes fichiers... ?

Si y a une erreur, je sais pas d'où elle vient puisque que je ne trouve pas de solution !

L'URL est ici

Le Bookmark est :

<!-- Mettre en favoris compatibles -->
<script type="text/javascript">
/* Modified to support Opera */
function bookmarksite(title,url){
if (window.sidebar) // firefox
window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ // opera
var elem = document.createElement('a');
elem.setAttribute('href',url);
elem.setAttribute('title',title);
elem.setAttribute('rel','sidebar');
elem.click();
}
else if(document.all)// ie
window.external.AddFavorite(url, title);
}
</script>

et le lien est :

<a href="java script:bookmarksite('Nom_du_site', 'http://mon_domaine/')">Favoris</a>

Maintenant pour le Cmod, c'est Free qui gère tout ça. Je ne peux rien modifier.

Si tu as une solution à me proposer, je suis preneur !

Modifié par jlb59
Lien vers le commentaire
Partager sur d’autres sites

Déjà tu as 2 instances de <!DOCTYPE ... une en première ligne et une autre en ligne 52 :whistling:

idem pour <html> en ligne 53 ...

Puis encore un <!DOCTYPE en ligne 108 et un <html en ligne 109 ....

Voir aussi les lignes 179 et 180 ...

Idem en ligne 240 et 241 ...

Idem en 468 et 469 ...

Idem en 769 et 770 ...

Et encore... il en reste d'autres ! :lol: lignes 883 et 884

Tu veux sortir premier sur une requête DOCTYPE ? Tu t'y prends mal :)

En fait c'est tout le bloc d'entête qui est multiplié par X, et tu as aussi plusieurs instances de <body> ;;;

Lien vers le commentaire
Partager sur d’autres sites

Dan a parfaitement raison.

Je pense que tu ne maitrises pas les "include" ! En effet tu dois t'assurer que le code généré final soit conforme et non pas le code généré individuel à chaque élément quand tu utilises se genre de fonction.

++

Patrick

Lien vers le commentaire
Partager sur d’autres sites

Déjà tu as 2 instances de <!DOCTYPE ... une en première ligne et une autre en ligne 52 :whistling:

idem pour <html> en ligne 53 ...

Puis encore un <!DOCTYPE en ligne 108 et un <html en ligne 109 ....

Voir aussi les lignes 179 et 180 ...

Idem en ligne 240 et 241 ...

Idem en 468 et 469 ...

Idem en 769 et 770 ...

Et encore... il en reste d'autres ! :lol: lignes 883 et 884

Tu veux sortir premier sur une requête DOCTYPE ? Tu t'y prends mal :)

En fait c'est tout le bloc d'entête qui est multiplié par X, et tu as aussi plusieurs instances de <body> ;;;

Merci de ta réponse Dan, mais je ne te comprends pas très bien.

Dans chacune des pages, il y a un DOCTYPE, j'ai encore re-contrôler, je n'en ai pas vu en double !

Tu as vu ça où STP ?

Lien vers le commentaire
Partager sur d’autres sites

Je confirme ce que t'as dis Dan ton Doctype est présent plusieurs fois dans la pages (dans firefox fait CTRL+U pour afficher le source de ta page et tu verras par toi même).

A+

Lien vers le commentaire
Partager sur d’autres sites

Je confirme ce que t'as dis Dan ton Doctype est présent plusieurs fois dans la pages (dans firefox fait CTRL+U pour afficher le source de ta page et tu verras par toi même).

A+

Merci de l'astuce Dragonz, je fais ça.
Lien vers le commentaire
Partager sur d’autres sites

Si tu utilises des appels à la fonction include() en Php pour générer ta page, il ne faut de <!DOCTYPE (ainsi que <html><head>...</head><body>...</body></html>) qu'une seule fois, dans l'élément conteneur.

Lien vers le commentaire
Partager sur d’autres sites

Si tu utilises des appels à la fonction include() en Php pour générer ta page, il ne faut de <!DOCTYPE (ainsi que <html><head>...</head><body>...</body></html>) qu'une seule fois, dans l'élément conteneur.
Si je comprends, il faut que la page index.php, qui utilise des includes, doit être le seul à avoir un Doctype et les autres pages en Html sans ?
Lien vers le commentaire
Partager sur d’autres sites

Oui c'est exactement ça !

Comme je te l'ai dis plus haut, ce qui compte c'est le code généré de la page finale et non page le code des pages "incluses".

++

Patrick

Bon, je crois avoir compris et je corrige tout ça.

Mais pour la descrition et les keywords, je dois en mettre seulement dans index.php ?

--------------------------

J'ai transformé et voilà ce qui se passe :

1- au lancement pas de prb

2- quand j'appelle un autre page (toujours à la racine) y a plus de css

Donc, je vais remettre les scripts css pour afficher correctement. Je ne pense pas que ça va influenser W3C !!!!

Qu'en penses-tu ?

Modifié par jlb59
Lien vers le commentaire
Partager sur d’autres sites

Il n'y a pas que le doctype qui doit être mis une seule fois.

Une page HTML est composée comme suit :

Doctype

<head>

..

</head>

<body>

..

</body>

Il faut que le code généré (c'est-à-dire de sortie de ton programme) soit comme ça...

Or là, tu as plusieurs têtes, plusieurs corps... Bref, ça fait un drôle de bonhomme !

Il faut que tu enlèves les <head> partout, et en laisser un juste au début.

Lien vers le commentaire
Partager sur d’autres sites

Il n'y a pas que le doctype qui doit être mis une seule fois.

Une page HTML est composée comme suit :

Il faut que le code généré (c'est-à-dire de sortie de ton programme) soit comme ça...

Or là, tu as plusieurs têtes, plusieurs corps... Bref, ça fait un drôle de bonhomme !

Il faut que tu enlèves les <head> partout, et en laisser un juste au début.

V'là autre chose maintenant.

Il m'a été dit que je ne devais pas mettre des Doctype dans les Html mais seulement dans les Php (qui n'ont que des includes), et tu me dis le contraire !

Comment vais-je y arriver moi ?????

Quand tu parles de sortie de programme, tu veux dire quoi ?

Si je fais (Doctype) comme tu dis, avec W3C je vais avoir des erreurs suppl.

C'est quand je les ai enlevés qu'elles ont été moindre.

Bref, tu vas mieux voir les en-têtes, si t'as le temps bien-sûr :

Index.php

<?php session_start();  ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>........</title>
<meta name="keywords" content="......">
<meta name="description" content=".......">
<meta name="author" content=".......">
<meta name="publisher" content=".......">
<meta name="copyright" content=".......">
<meta name="page-topic" content=".......">
<meta name="page-type" content=".......">
<meta name="audience" content="Tous">
<meta name="robots" content="INDEX,FOLLOW">
<meta name="expires" content="NEVER">
<meta http-equiv="Content-Language" content="fr">

Accueil.html

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>Page d'accueil</title>
<meta name="keywords" content="......">
<meta name="description" content=".......">
<meta name="author" content=".......">
<meta name="publisher" content=".......">
<meta name="copyright" content=".......">
<meta name="page-topic" content=".......">
<meta name="page-type" content=".......">
<meta name="audience" content="Tous">
<meta name="robots" content="INDEX,FOLLOW">
<meta name="expires" content="NEVER">
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">

C'est pratiquement la même chose, sauf que j'ai enlvé le Doctype dans le Html.

J'ai gardé les CSS, car j'avais plus de mise en page.

Franchement, je ne sais plus quoi faire !

Lien vers le commentaire
Partager sur d’autres sites

:wacko:

Il va falloir revoir un tout petit peu les bases de la création de sites internet.

Le HTML est ce qui est lu par le navigateur, qui affiche alors une magnifique page.

Le PHP est un langage, qui permet de créer du HTML dynamiquement : le code HTML est alors différent suivant les situations.

Cependant, même quand tu programmes en PHP, c'est bien du HTML qui est envoyé au navigateur...

Et c'est le HTML envoyé qui doit ressembler à quelque chose : une tête, un corps, rien de plus.

Fais en sorte que le HTML envoyé n'ait qu'un seul doctype, et qu'une seule tête, en tout début. Tous les autres include() créeront des bouts de code (qui s'ajouteront dans le body, par exemple... Dans ce cas-là, tu ne remets pas <body>...</body>)

Me fais-je bien comprendre ?

Lien vers le commentaire
Partager sur d’autres sites

Il va falloir revoir un tout petit peu les bases de la création de sites internet.

Le HTML est ce qui est lu par le navigateur, qui affiche alors une magnifique page.

Le PHP est un langage, qui permet de créer du HTML dynamiquement : le code HTML est alors différent suivant les situations.

Cependant, même quand tu programmes en PHP, c'est bien du HTML qui est envoyé au navigateur...

Et c'est le HTML envoyé qui doit ressembler à quelque chose : une tête, un corps, rien de plus.

Oui, je vois le processus. Merci de le rappeler :unsure:
Fais en sorte que le HTML envoyé n'ait qu'un seul doctype, et qu'une seule tête, en tout début. Tous les autres include() créeront des bouts de code (qui s'ajouteront dans le body, par exemple... Dans ce cas-là, tu ne remets pas <body>...</body>)
Bon, il faut que les choses soient bien claires. Si c'est le Php (qui a les includes) qui est chargé en 1er sur le serveur, logiquement, d'après ce que l'on m'a dit, c'est le seul à avoir un Doctype.

Et toi, tu me dis que ce sont les Html qui doivent le contenirY a pas confusion là ???? :wacko:

Me fais-je bien comprendre ?
Oui, mais tu avoueras que ce que l'on m'a dit et tes propos sont différents. Alors qui a raison ? :?:

plan.jpg

Bon, l'esquisse du squelette n'est pas exactement ce que tu attends. J'espère que tu comprendras le processus ! :blush:

Pour t'expliquer ce que j'ai fait avec ce que l'on m'a dit, dans chaque index.php, il y a un Doctype. Je l'ai enlevé dans tous les Html.

Tu me comprends ?

Je sais, pour moi, c'est limpide, mais pour qq qui ne connait pas ce que j'ai fait, il aura un peu plus de mal à comprendre !

Modifié par jlb59
Lien vers le commentaire
Partager sur d’autres sites

Un script .php ne fait que générer du Html, vu qu'il est interprété sur le serveur avant transmission vers le navigateur.

Donc il ne faut pas s'arrêter au .html ou au .php parce qu'au final tout ne génère que du html qui est envoyé au navigateur.

Ce qui est important est de définir quel sera le document conteneur (qui sera dans ce cas en .php vu qu'il y a des include() )

C'est ce document qui doit contenir l'entête et la structure de la page, avec donc un <!DOCTYPE, une entête <html><head>...</head>, un corps <body>...</body> et une fin </html>

Là où j'ai mis des ... , tu peux mettre des include() et ces fichiers ne doivent contenir QUE ce que tu mettrais si ce code se trouvait dans le document conteneur. C'est à dire aucune des balises que je viens de te citer :!:

Dan

Lien vers le commentaire
Partager sur d’autres sites

Et si tu nous mettais le code de ton index.php ici on comprendrait mieux, car j'ai l'impression (d'après tes explications) que ton index.php fais des include de tes fichiers .html me trompe je?

Lien vers le commentaire
Partager sur d’autres sites

Et si tu nous mettais le code de ton index.php ici on comprendrait mieux, car j'ai l'impression (d'après tes explications) que ton index.php fais des include de tes fichiers .html me trompe je?
Non, tu ne te trompes pas. ;)

Tu verras ci-contre la structure de l'index. C'est un peu long, je m'en excuse ! Mais comme j'ai fais cela avec ce que j'ai lu, tu comprendras que ce n'est pas très organisé. : :blush:

<?php session_start();  ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>QI98 - Analyse de la mémoire</title>
<meta name="keywords" content="profession,precision,précision,firewall,firewalls,hoax,hoaxes,antihoax,anti hoax,anti-hoax,moteur,moteurs,qi,qi98,quotient,intellectuel,quotient intellectuel,performance,memoire,mémoire,evaluation,évaluation,test,tests,item,f
iabilite,fiabilité,spatial,spacial,numeration,numération,logique,logic,observati
o
n,observe,verbal,grammaire,bureau,bureautique,bureautic,burotique,burotic,office
,
traduc,traduct,tracducteur,traducteurs,traduction,compta,comptabilite,comptabili
t
é,gestion,gestions,gestion finance,gestion finances,bdd,base donnees,base donneés,bourse,bourse finance,bourse finances,finance,finances,test observation,test,logiciel compta,logiciel français,logiciel francais,logiciels francais,logiciel gestion gratuit,logiciels gestion gratuit,logiciel gestion planning,test spatial,logiciel gestion temps,comparatif antivirus,test verbal,verbal test,numeration test,numération test,test qi,securite pc,logiciel gestion comptable,logiciel immobilier,test numeration,logique test,antispams,logiciels gratuits,qi test,logiciel gratuit,logiciel gratuit,logiciels,spybot,logiciel gestion parc informatique,iq test,logiciels bourse,logiciel france,tests,logic test,logiciel de gestion,logiciel gestion locative,test logique,observation test,spatial test,security test,test d observation,gestion logiciel,gestion financiere logiciel,antivirus,cracks,antiespions,antiespions,anti-espion,anti-espions,test logic,test logique,logique test,tests logic,tests logic, tests logique,logique tests,logiciels gestion,pc securite">
<meta name="description" content="QI98 analyse les facultés intellectuelles d'un individu (QI).">
<meta name="author" content="JL BOUCHEZ">
<meta name="publisher" content="JL BOUCHEZ">
<meta name="copyright" content="2007 JLB59">
<meta name="page-topic" content="Education,Evaluation">
<meta name="page-type" content="Site d'évaluation">
<meta name="audience" content="Tous">
<meta name="robots" content="INDEX,FOLLOW">
<meta name="expires" content="NEVER">
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<link rel="StyleSheet" type="text/css" href="main2.css" media="screen">
<script type="text/javascript" src="./css/js/menuDropdown.js"></script>
<!-- Empêche la détection d'erreur (Erreur sur la page) -->
<script type="text/javascript">
<!--
function no_error()
{ return true; }
window.onerror=no_error;
//-->
</script>
<!-- Mettre en favoris compatibles -->
<script type="text/javascript">
/* Modified to support Opera */
function bookmarksite(title,url){
if (window.sidebar) // firefox
window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ // opera
var elem = document.createElement('a');
elem.setAttribute('href',url);
elem.setAttribute('title',title);
elem.setAttribute('rel','sidebar');
elem.click();
}
else if(document.all)// ie
window.external.AddFavorite(url, title);
}
</script>
</head>
<body>

<table id="general" cellspacing="0" cellpadding="0">
<tr>
<td>

<?php include("./header.html"); ?>

<!-- /////// EN-TETE ///////// -->
<?php include("./entete.html"); ?>

<!-- /////////// MENU //////////// -->

<table cellspacing="0" cellpadding="0">
<tr><td>
<?php include("./menu.html"); ?>
</td></tr>
</table>

<table id="pageinfos" cellspacing="0" cellpadding="0">
<tr><td>
<?php include("pageinfos.html"); ?>
</td></tr>
</table>

<!-- /////////// TABLEAU CENTRAL //////////// -->
<table class="tableaucontenu" cellspacing="0">
<tr>
<!-- /////////// MENU GAUCHE //////////// -->
<td class="colonnegauche" style="vertical-align:top;" width="180">
<?php include("./menug.html"); ?>
</td>

<!-- /////////// CONTENU CENTRAL //////////// -->
<td class="colonnecentrale">
<div class="zonecontenu"><br>
<?php
if (isset($_GET["page"])) $page = $_GET["page"];
else $page = 0;
switch ($page)
{
case 0 : include("accueil.html"); break;
case 1 : include("./contact/index.php"); break;
case 2 : include("./alex_guestbook4/index.php"); break;
case 3 : include("./forum_basic/index.php"); break;
case 4 : include("faq.html"); break;
case 5 : include("sitemap.html"); break;

//case 6 : include("./rechercher.php"); break;
case 6 : include("./invite.php"); break;

case 10 : include("./affiliation/codes_liens.html"); break;
case 20 : include("./securite/explications.html"); break;
case 30 : include("./apropos/index.php"); break;
case 40 : include("./bureautique/bdd.html"); break;
case 50 : include("./popularite/index.php"); break;
case 60 : include("./download/index.php"); break;

}
?>
</div>
</td>

<!-- /////////// MENU DROIT //////////// -->
<td class="colonnedroite" style="vertical-align:top;" width="180">
<?php include("./menud.html"); ?>
</td>
</tr>
</table>

<!-- /////////// FOOTER //////////// -->
<?php include("./footer.html"); ?>

</td>
</tr>
</table>


</body>
</html>

Merci beaucoup de m'aider.

Lien vers le commentaire
Partager sur d’autres sites

Ok c'est mieux maintenant, et si je ne trompe pas non plus tes fichiers header.html, entete.html, ... contiennent tous un doctype, des balises titles, ... et c'est la le problème:

Edite tout tes fichiers .html et efface tout ce qui est au dessus de <body> (body inclus) et en bas efface tous ce qui après </body> (/body inclus) ça devrais le faire avec ça.

NB: garde une copie de tes fichiers .html avant la modifs on ne sait jamais!

Lien vers le commentaire
Partager sur d’autres sites

Merci Dragonz, c'est très explicite comme réponse.

Je vais faire comme tu as dis, mais je me demande si, en faisant ça, ça ne va pas influer sur les CSS, parce que j'ai déjà eu la surprise !

En effet, même si index.php fait appelle aux CSS, les autres pages aussi, et ça marche plutôt bien.

Maintenant, s'il n'y a que l'index.php qui appelle ces scripts, il va y avoir un prb pour l'affichage. Surtout si je les enlève des Html !

Bref, je vais quand même essayer, mais sans conviction.

Si cela marche, alors tant mieux :thumbsup: , dans le cas contraire :( , je te le ferai savoir.

Encore merci.

A bientôt.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...