A <noscript> tag-nál hogy tudom megakadályozni, hogy a program tovább fusson?
Szeretném elérni ,hogy a noscript által közrefogott szöveg jelenjen csak meg és az oldal mindössze odáig fusson.
köszi !
Ha van a <noscript> után HTML, az meg fog jelenni. Ha JavaScript van utána, az nyilván nem fog.
Annyit csinálhatsz, hogy
1. <noscript><meta http-equiv="refresh" content="0; URL=/page.html"></noscrpit>
Ez átirányit máshova, ha nincs JS.
2. Akkor irányitasz át, ha van JS.
location.href = "page.html"
Ez csak akkor fut le, ha van JS.
PHP utasítást biztos nem végez el semmilyen böngésző.
Javaslom valami alap tutorial elolvasását.
Én honnan tudnám mit akartál írni?
Láthatóan nagyon összekeversz dolgokat.
A gond az, hogy nem érted, hogy mi hogyan működik.
Mondjuk valaki meghívja az index.php-t.
Ezt a kérést megkapja a szerver, és átfuttatja a PHP értelmezőjén. Az szépen a <? illetve <?php illetve <?= és a ?> közötti részt, mint PHP scriptet értelmezi. Az ezen kívüli részeket változatlanul hagyja. Így ezzel generál egy HTML szöveget, mint kimenetet. De a HTML-t önmagában nem értelmezi.
A kliens megkapja ezt a generált HTML-t, és ő értelmezi a HTML tag-eket. Ha be van kapcsolva a javascript futtatása, akkor a <script> tagen belül, meg más eseményeknél pl. onclick, stb… értelmezi a Javascript kódokat. A <noscript> tag-en belüli részt figyelmen kívül hagyja, nem jeleníti meg. Ha ki van kapcsolva a javascript, akkor a scripteket nem értelmezi, viszont megjeleníti a <noscript> tag tartalmát.
Ergo a PHP szerver oldalon fut le, és mit sem tud arról, hogy ő mit állít elő, HTML-t, XML-t, CSS, JS fájlt, JSON szöveget, sima szövegfájlt, képet, PDF-et. Csak végrehajtja a PHP utasításokat, a HTML-t nem ismeri.
A böngésző viszont kliens oldalon fut le, az már mit sem tud a szerver oldalon futó folyamatokról, ő már ezeknek csak az eredményét kapja meg, hogy az statikus fájlból származik, vagy PHP script állította elő, vagy valami egészen más – mondjuk egy C program egy Perl script, egy node.js script –, arról ő semmit nem tud, nem is kell tudnia. Ő kizárólag a javascriptet futtatja, és ennek mentén futtat javascriptet, vagy jelenít meg noscript tag-et.
Ha a PHP értelmező futását akarod megállítani, akkor ott az exit(); De ez az exit függvény utáni statikus részt sem jeleníti meg. Különben meg használhatsz elágazásokat, include-olásokat, mindenfélét.
Pl.:
<?php if ($logged_in): ?>
<p>Üdv <?= $user ?>!</p>
…
<?php endif; ?>
Vagy ez is jó:
<?php if ($logged_in) { ?>
<p>Üdv <?= $user ?>!</p>
…
<?php } ?>
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!