Avatar billede curtain Nybegynder
25. februar 2004 - 14:04 Der er 8 kommentarer

div i inkluderet echo tag

Hej

Jeg har en side, hvorpå jeg har tilføjet et stylesheet:

<?php
session_start();
?>

<html>

<head>
<title>Slumkum</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>

<body>

<?php
include("login/checkall.php");
?>

<!--- Titel ---->

<div id="title">

<h2><div class="overskrift">Slumkum</div></h2>

</div>



<!--- Indhold ---->

<div id="content">


</div>


<!--- Venstre menu -->

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

<!--- Højre menu --->



</body>

</html>

Så inkluderer jeg så checkall.php filen som ser således ud:

<?php

if(isset($_SESSION['user'])) {
  echo "<div id='right'>Navn:  {$_SESSION['user']}</div>";
} else {
  echo "<div id='right'>";
  echo "<form action='login/check.php' method='post'>";
  echo "Brugernavn<br />";
  echo "<input class='input' type='text' name='brugernavn'><p />";
  echo "Password<br />";
  echo "<input class='input' type='password' name='password'><p />";
  echo "<input type='submit' name='submit' value='Submit'>";
  echo "<input type='submit' name='opret' value='Opret'>";
  echo "</form>";
  echo "</div>";

}

?>

Men så er mit problem at #right og .input, slet ikke bliver registeret, somom den ikke får forbindelse til stylesheetet, på trods af at de andre styles jeg har lavet i dokumentet virker fint. #right og .input bliver derimodinkulderet, hvis jeg skriver dem uden for php'en, således at min side kommer til at se sådan ud:

<?php
session_start();
?>

<html>

<head>
<title>Slumkum</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>

<body>

<!-- DETTE ER LIGE TILFØJET-->

<div id="right">
<?php
include("login/checkall.php");
?>
</div>

<!---AFSLUT DIV-->


<!--- Titel ---->

<div id="title">

<h2><div class="overskrift">Slumkum</div></h2>

</div>



<!--- Indhold ---->

<div id="content">


</div>


<!--- Venstre menu -->

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

<!--- Højre menu --->



</body>

</html>


Men det er ikke godt nok for mig, eftersom de inputs jeg har i echo tagget, skal have en anden stil end det der inden for #right id'en.

Jeg har skrevet følgende i mit stylesheet:


#right {
        position:absolute;
        right:0px;
        top:87px;
        width:150px;
        background-color:#666666;
        padding-top:5px;
        padding-left:5px;
        color:white;
        height:200px;


.input {
        width:20px;
        border:1px solid black;
        background-color:red;

}

Hvad er det jeg gør forkert?
Avatar billede jakoba Nybegynder
25. februar 2004 - 14:24 #1
det er altid farligt at bruger navne der er det samme som existerenden foruddefinerede navne.

Så jeg ville anbefale at du ændrer  '#right'  til fx  '#rightnogetsomabsolitikkeeribrug'

og det samme gælder dit navn 'input'.

nogen gange kan browsere godt hitte id af det selvom man bruger den slags navne. men det er alligevel aldrig en god ide. Tænk på den stakkel der skal vedligeholde siden.

mvh JakobA
Avatar billede Slettet bruger
25. februar 2004 - 14:27 #2
Og det ser ud til at du mangler en slut-} på din #right.

Prøv at se kilden i din browser. Hvis de to udgaver virker forskelligt må der være en forskel.
Avatar billede curtain Nybegynder
25. februar 2004 - 14:44 #3
koderne i min browser ser således ud:


<html>

<head>
<title>Slumkum</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>

<body>

<div id="loginright"><form action='login/check.php' method='post'>Brugernavn<br /><input class="input_login" type='text' name='brugernavn'><p />Password<br /><input class="input_login" type='password' name='password'><p /><input type='submit' name='submit' value='Submit'><input type='submit' name='opret' value='Opret'></form></div>
<!--- Titel ---->

<div id="title">

<h2><div class="overskrift">Slumkum</div></h2>

</div>



<!--- Indhold ---->

<div id="content">


</div>


<!--- Venstre menu -->

<div id="bar1">

</div>




<div id="leftmenu">

<ul>

<li><a href="index.php">Forsiden</a></li>
<li><a href="side3.php">Tal gætteren</a></li>
<li><a href="side4.php">Hvem er du?</a></li>
<li><a href="side5.php">Modtag en fantastisk mail!</a></li>
<li><a href="news.php">Gæstebogen</a></li>

</ul>


</div>

<!--- Højre menu --->



</body>

</html>


Jeg har ændret #right til login_right og .input tip input_login.
Avatar billede Slettet bruger
25. februar 2004 - 15:16 #4
Det burde virke.

Forresten har du vistnok forkert syntaks i dine kommentarer (Med mindre reglerne er blevet ændret uden at jeg har opdaget det.) I en HTML-kommentar SKAL der være to og kun to minusser i starten og slutningen.
Avatar billede curtain Nybegynder
25. februar 2004 - 15:23 #5
jo, men problemet er jo netop at det ikke virker. Kan det skyldes at jeg inkluderer filen?
Avatar billede jakoba Nybegynder
25. februar 2004 - 15:30 #6
NEJ.  php's output er præcis det samme hvadenten du benytter include  eller  cut&paste

Hvis dit fejl-rapportering niveo er sat så php-fejl bliver ignoreret kan do dog evt være at du benytter forkert mappesti i din include så php slet ikke finder den fil (og ingenting bliver includeret. Prøv evt at tilføje en linie:
  error_reporting( E_ALL );
forrest i første php sektion.

mvh JakobA
Avatar billede jakoba Nybegynder
25. februar 2004 - 15:34 #7
Du siger du har ændret 'right' til 'login_right'  men i filen bruger du 'loginright' (uden '_')
Avatar billede curtain Nybegynder
25. februar 2004 - 17:51 #8
Nu har jeg fundet problemet. Jeg havde glemt en tuborg klamme, et sted tidligere i mit stylesheet, og det forvirrede åbentbart resten af sheetet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester