26069 sujets

CSS et mise en forme, CSS3

Bonjour,
J'ai un gros site que je change en responsive.
Dans mon ancien site, j'ai des css dans le head du genre :
<link href="/act_styles/bio.css" rel="stylesheet" type="text/css" />

et des js du genre
<script type="text/javascript" src="/act_page/js/animmenu.js"></script>

Comme je change, j'ai créé un dossier css et js et il ne me prend pas les liens absolus, mais seulement les liens relatifs
<link rel="stylesheet" href="../css-aft/rslides.css"/> ou
<link href= "../css-aft/nav-responsive.css" rel="stylesheet" type="text/css" />
est-ce normal ?
Merci
Salut,

Je ne suis pas expert . . ton fichier de base.php ou .html est à la racine du site ? Il y a peut-être un conflit entre les places de tes dossiers et le fichier appelant (base.php)
Qu'affiche cette instruction ?


echo dirname($_SERVER['PHP_SELF']);
echo "<br />";
echo $_SERVER['DOCUMENT_ROOT']);

Modifié par niuxe (09 Aug 2017 - 22:22)
Bonjour,

Merci niuxe pour ta réponse, mais comme je ne suis pas du tout informaticien, peux-tu me donner des précisions pour savoir comment je fais pour appeler cette instruction Smiley lol .
J'en profite pour préciser aussi que si mon ancien site prenait les liens absolus correctement, il ne les prenait pas pour les include :
<?php include ('../../include/menu.php'); ?>

Merci
Le souci est que je ne connais pas l'arborescence de ton site. Apparemment, il n'y a pas de gestion de fichier aussi. Là où tu as cette instruction :


<link href="/act_styles/bio.css" rel="stylesheet" type="text/css" />

ou celle là :

<script type="text/javascript" src="/act_page/js/animmenu.js"></script>


ecris à la suite cela et dis nous quel est le résultat :


<?php
echo dirname($_SERVER['PHP_SELF']);
echo "<br />";
echo $_SERVER['DOCUMENT_ROOT']);
?>
Si je t'ai bien compris, quand je fais cela
<?php include ('include-aft/menu_haut_dog_complet.php'); ?>
<?php
echo dirname($_SERVER['PHP_SELF']);
echo "<br />";
echo $_SERVER['DOCUMENT_ROOT']);
?>

La page devient blanche et je ne vois plus rien Smiley bawling .
Les erreurs doivent être masquées.

Alors qu'affiche ceci (à la place de ce que je t'ai dit):

<?php 
echo "<pre>";
print_r($_SERVER);
echo "</pre>";
?>
Je te donne le résultat de ce qu'il m'affiche alors :
Array
(
    [HTTP_HOST] => localhost:8888
    [HTTP_CONNECTION] => keep-alive
    [HTTP_PRAGMA] => no-cache
    [HTTP_CACHE_CONTROL] => no-cache
    [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    [HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.8
    [HTTP_COOKIE] => _ga=GA1.1.186014238.1497603569; _gid=GA1.1.321445150.1502289072; __utma=111872281.186014238.1497603569.1502349814.1502369746.84; __utmc=111872281; __utmz=111872281.1497603569.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
    [HTTP_UPGRADE_INSECURE_REQUESTS] => 1
    [HTTP_USER_AGENT] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36
    [HTTP_ACCEPT_ENCODING] => gzip, deflate
    [PATH] => /usr/bin:/bin:/usr/sbin:/sbin
    [SERVER_SIGNATURE] => 
    [SERVER_SOFTWARE] => Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zh DAV/2 mod_perl/2.0.8 Perl/v5.20.0
    [SERVER_NAME] => localhost
    [SERVER_ADDR] => ::1
    [SERVER_PORT] => 8888
    [REMOTE_ADDR] => ::1
    [DOCUMENT_ROOT] => /Applications/MAMP/htdocs/vetopsy-patrix
    [SERVER_ADMIN] => you@example.com
    [SCRIPT_FILENAME] => /Applications/MAMP/htdocs/vetopsy-patrix/aft-magali/recherche-right.php
    [REMOTE_PORT] => 64755
    [GATEWAY_INTERFACE] => CGI/1.1
    [SERVER_PROTOCOL] => HTTP/1.1
    [REQUEST_METHOD] => GET
    [QUERY_STRING] => 
    [REQUEST_URI] => /aft-magali/recherche-right.php
    [SCRIPT_NAME] => /aft-magali/recherche-right.php
    [PHP_SELF] => /aft-magali/recherche-right.php
    [REQUEST_TIME_FLOAT] => 1502377033.64
    [REQUEST_TIME] => 1502377033
    [argv] => Array
        (
        )

    [argc] => 0
)
Je vois que tu es sur MAC OS.

Je me doutais qu'il y avait un problème dans ce genre là (cf ton mp). Le problème étant que lorsque tu mettras en ligne, tu n'auras pas le même résultat. Je te confirme qu'il est préférable que tu aies les liens en absolu pour ce genre de choses (pour le passage à l'url rewriting entres autres). La marche à suivre est que tu te fasses un vhosts dans ton environnement. Comme ça les changements seront invisibles :

1. il faut éditer le fichier /etc/host avec vim (il faut avoir les droits super users ==> root)
2. il faut éditer le fichier /applications/mamp/apache/conf/extra/httpd-vhost.conf
3. rebooter le serveur

Est ce que tu sais le faire ?

ps : C'est bien que tu sois en php5.6. Mais attention, peut être que ton hébergeur sera sur une version antérieur. D'ailleurs, il faudrait que tu édites ton php.ini pur que les messages erreurs s'affichent puisque tu es en phase de dev et non de production. Rallala, mamp et sa config en carton.....
Modifié par niuxe (10 Aug 2017 - 20:54)
Bonjour et merci encore d'avoir pris ton temps pour me répondre.
Mais comme je n'y connais rien, je ne sais absolument pas comment faire. Je suis vraiment ignare Smiley decu .
Une petite précision cependant qui peux avoir une importance, je travaille aussi sur dreamweaver, ce qui, d'après ce que j'ai entendu, n'est pas forcément super, bien que je n'ai jamais eu aucun problème. J'ai fait un dossier spécial dans mon ancien site pour le développement et pour pouvoir plus facilement exporter les résultats en ligne. Pour tous les autres dossiers, les liens absolus marchent super, sauf sur ce dossier de travail.
Comme tu m'as suggéré, je viens d'ailleurs de mettre une page en ligne avec un lien absolu pour les styles et il ne me les prends pas alors que je suis sur internet et idem, les autres dossiers marchent super. Comme j'ai un site de plus d'un millier de pages, je ne peux me passer de ces liens absolus.
Merci encore