Masz w komunikacie błędu wskazówkę
Undefined constant "page1"
taki zapis
<?php if($pagename === page1) ?>
php "szuka" stałej o nazwie page1
tak jak już napisał Tobie @Igorek, pewnie chodziło tobie o tekst page1, więc musisz umieści go w
- apostrofach 'page1'
- lub w cudzysłowach "page1"
jeżeli mimo wszystko chciałbyś zachować ten zapis
<?php if($pagename === page1) ?>
po prostu utwórz stałą o tej nazwie, czyli np.
- define(...)
define('page1', 'page1');
define('page2', 'page2');
define('page3', 'page3');
define('page4', 'page4');
- const
const page1 = 'page1';
const page2 = 'page2';
const page3 = 'page3';
const page4 = 'page4';
całość
<?php
$pagename = $_GET['action'] ?? null;
var_dump($pagename);
define('page1', 'page1');
define('page2', 'page2');
define('page3', 'page3');
define('page4', 'page4');
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>test</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<div class="logo">ArkaVlog<div>
</header>
<nav>
<div class="menu">
<a class="link"href="?action=page1"><div class="button"> podstrona1</div></a>
<a class="link"href="?action=page2"><div class="button"> podstrona2</div></a>
<a class="link"href="?action=page3"><div class="button"> podstrona3</div></a>
<a class="link"href="?action=page4"><div class="button"> podstrona4</div></a>
</div>
</nav>
<main>
<div class="content">
<?php if($pagename === page1): ?>
Cześć, Gdy próbuję wysłać zapytanie do mysql pokazuje mi się taki błąd
<?php elseif($pagename === page2): ?>
Mój pomysł brzmi: Jeśli faktycznie tym razem będziemy mogli zaufać Raxonowi to powiedz mu o tych wizjach z tego wypadku, może rozwinąć się z tego fajny wątek
<?php elseif($pagename === page3): ?>
Bardzo dokładnie i z pełnym pietyzmem powoli i przede wszystkim dokładnie i że zrozumieniem dla odbiorców którzy znają HTML i CSS który można wdrożyć do PHP i uzyskać dostęp do nowych rozwiązań które nie są możliwe w czystym HTML i CSS.
Według mojej oceny idealnie przeprowadzona lekcja
Przecież na backendzie można pisać front end tak jak w przypadku
<?php elseif($pagename === page4): ?>
Noo nareszcie. Wszędzie tego szukałem!
<php else: ?>
HMS Abercrombie – brytyjski monitor z okresu I wojny światowej, jedna z czterech jednostek typu Abercrombie. Okręt miał wyporność 6150 ton i osiągał prędkość 6,5 węzła, a jego główne uzbrojenie stanowiły dwa działa kalibru 356 mm produkcji amerykańskiej, uzupełniane przez artylerię mniejszego kalibru. Zwodowany w kwietniu 1915 roku w stoczni Harland and Wolff w Belfaście, został wcielony do służby w Royal Navy w maju 1915 roku. Początkowo okręt miał otrzymać nazwę na cześć amerykańskiego admirała Davida Farraguta, jednak ostatecznie nazwano go na cześć XVIII-wiecznego brytyjskiego generała Ralpha Abercromby’ego. Okręt wziął czynny udział w działaniach wojennych na Morzu Śródziemnym, uczestnicząc m.in. w kampanii dardanelskiej. HMS „Abercrombie” został wycofany ze służby 9 maja 1919 roku, a w roku następnym rozbrojony. W 1927 roku monitor został sprzedany firmie T.W. Ward i trafił do stoczni złomowej w Inverkeithing, gdzie został rozebrany do końca 1927 roku. Czytaj więcej…
<php endif; ?>
</div>
</main>
</body>
</html>
<?php endif; ?>
Masz jeszcze błąd w liniach 37 i 39 brakuje znaku ?
<php else: ?>
HMS Abercrombie – ...
<php endif; ?>
na
<?php else: ?>
HMS Abercrombie – ...
<?php endif; ?>
P.S. spróbuj użyć include
index.php
<?php
$pagename = $_GET['action'] ?? null;
var_dump($pagename);
define('page1', 'page1');
define('page2', 'page2');
define('page3', 'page3');
define('page4', 'page4');
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>test</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<div class="logo">ArkaVlog<div>
</header>
<nav>
<div class="menu">
<a class="link"href="?action=page1"><div class="button"> podstrona1</div></a>
<a class="link"href="?action=page2"><div class="button"> podstrona2</div></a>
<a class="link"href="?action=page3"><div class="button"> podstrona3</div></a>
<a class="link"href="?action=page4"><div class="button"> podstrona4</div></a>
</div>
</nav>
<main>
<div class="content">
<?php
if ($pagename === page1)
include 'page1.html';
elseif ($pagename === page2)
include 'page2.html';
elseif ($pagename === page3)
include 'page3.html';
elseif ($pagename === page4)
include 'page4.html';
else
include 'page_default.html'; // lub wygenerować error 404
?>
</div>
</main>
</body>
</html>
lub
<?php
$pagename = $_GET['action'] ?? null;
var_dump($pagename);
define('page1', 'page1');
define('page2', 'page2');
define('page3', 'page3');
define('page4', 'page4');
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>test</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<div class="logo">ArkaVlog<div>
</header>
<nav>
<div class="menu">
<a class="link"href="?action=page1"><div class="button"> podstrona1</div></a>
<a class="link"href="?action=page2"><div class="button"> podstrona2</div></a>
<a class="link"href="?action=page3"><div class="button"> podstrona3</div></a>
<a class="link"href="?action=page4"><div class="button"> podstrona4</div></a>
</div>
</nav>
<main>
<div class="content">
<?php
switch ($pagename) {
case page1: include 'page1.html'; break;
case page2: include 'page2.html'; break;
case page3: include 'page3.html'; break;
case page4: include 'page4.html'; break;
default:
include 'page_default.html'; // lub wygenerować error 404
}
?>
</div>
</main>
</body>
</html>
lub
<?php
$pagename = $_GET['action'] ?? null;
//var_dump($pagename);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>test</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<div class="logo">ArkaVlog<div>
</header>
<nav>
<div class="menu">
<a class="link"href="?action=page1"><div class="button"> podstrona1</div></a>
<a class="link"href="?action=page2"><div class="button"> podstrona2</div></a>
<a class="link"href="?action=page3"><div class="button"> podstrona3</div></a>
<a class="link"href="?action=page4"><div class="button"> podstrona4</div></a>
</div>
</nav>
<main>
<div class="content">
<?php
$page = $pagename . '.html';
if (file_exists($page))
include $page;
else
include 'page_default.html'; // lub wygenerować error 404
?>
</div>
</main>
</body>
</html>
przykładowy page1.html (czy page1.php)
<p>Cześć, Gdy próbuję wysłać zapytanie do mysql pokazuje mi się taki błąd</p>
przykładowy page_default.html
<h3>HMS Abercrombie</h3>
<p>
HMS Abercrombie – brytyjski monitor z okresu I wojny światowej, jedna z czterech jednostek typu Abercrombie. Okręt miał wyporność 6150 ton i osiągał prędkość 6,5 węzła, a jego główne uzbrojenie stanowiły dwa działa kalibru 356 mm produkcji amerykańskiej, uzupełniane przez artylerię mniejszego kalibru. Zwodowany w kwietniu 1915 roku w stoczni Harland and Wolff w Belfaście, został wcielony do służby w Royal Navy w maju 1915 roku. Początkowo okręt miał otrzymać nazwę na cześć amerykańskiego admirała Davida Farraguta, jednak ostatecznie nazwano go na cześć XVIII-wiecznego brytyjskiego generała Ralpha Abercromby’ego. Okręt wziął czynny udział w działaniach wojennych na Morzu Śródziemnym, uczestnicząc m.in. w kampanii dardanelskiej. HMS „Abercrombie” został wycofany ze służby 9 maja 1919 roku, a w roku następnym rozbrojony. W 1927 roku monitor został sprzedany firmie T.W. Ward i trafił do stoczni złomowej w Inverkeithing, gdzie został rozebrany do końca 1927 roku. Czytaj więcej…
</p>
struktura plików dla powyższego przykładu
