Avatar billede rasm Nybegynder
08. januar 2004 - 14:50 Der er 46 kommentarer

Hvorfor virker det her php ikke?

HeJ alle!

Jeg er ved at lave et php script så jeg kan ændre baggrundsfarve i et dokument:D
Men når min form sender videre til selve scriptet står der at siden ikke kan findes her er koderne:

<html>
<body>
<form method="post" action="index.php">
<select name="baggrund">
<option value="#0000ff">Ukendt
<option value="#ffffff">Hvid
<option value="#000000">Sort
</select>
<input type="submit" value="Skift farve!">
</form>
</body>
</html>


Og scriptet:


<?
$body_streng = str_replace("farve",$baggrund,"<body bgcolor=farve text=white>");
echo "<html>";
echo $body_streng;
echo nl2br("Velkommen til min side");
echo "</body>";
echo "</html>";
?>



Hvad er der galt?
Avatar billede webcreator Nybegynder
08. januar 2004 - 14:52 #1
Skal du ikke lige hente "baggrund" først ?
$baggrund = $_POST["baggrund"];
Avatar billede rasm Nybegynder
08. januar 2004 - 14:52 #2
Men når min form sender videre til selve scriptet står der at siden ikke kan findes === Når formen sender videre til index.php står der at den ikke kan findes
Avatar billede webcreator Nybegynder
08. januar 2004 - 14:55 #3
Du kan i virkeligheden gøre det så enkelt :
<html>
<head>
<title>Nyt dokument</title>
</head>

<?php
$baggrund = "bgcolor="".$_POST["baggrund"]."";
echo "<body $baggrund>";
?

<!-- Din HTML kode her.. -->

</body>
</html>
Avatar billede webcreator Nybegynder
08. januar 2004 - 14:55 #4
Jamen så er det måske fordi din side ikke eksisterer. Sikker på, at din Index side ikke hedder Index.html ?
Avatar billede rasm Nybegynder
08. januar 2004 - 14:56 #5
Øhh måske men hvor er inputet?
Avatar billede rasm Nybegynder
08. januar 2004 - 14:58 #6
100% sikker
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:01 #7
Hvor inputet er ? Hvad mener du ?
Når du submitter, så sendes det til den nye side. Her skal det "hentes" igen vha. REQUEST (POST når det er fra en form)
Avatar billede rasm Nybegynder
08. januar 2004 - 15:07 #8
altså den kode du har smidt op sender til index.php som så ender tilbage igen?
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:21 #9
Nej.
Den fil jeg har vist ovenfor, kunne fx. være din index.php-fil. Du skal stadig bruge din dropdown-menu. Og den skal sende til index.php
Avatar billede rasm Nybegynder
08. januar 2004 - 15:31 #10
Men når jeg lukker ned skal det stadig være den baggrundsfarve!
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:37 #11
Nej. Men jeg har netop lavet et eksempel til dig her :
http://www.powerzone.dk/BG/
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:37 #12
Den kan huske den valgte farve i 2 år. Man kan sagtens sætte perioden til længere tid :)
Avatar billede rasm Nybegynder
08. januar 2004 - 15:38 #13
kan det være en fejl i formen at den ikke kan finde den rigtige fil?
Avatar billede rasm Nybegynder
08. januar 2004 - 15:40 #14
kan jeg få koderne?
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:40 #15
Ja, de to filer er pakket med WinZip :
http://www.powerzone.dk/BG/BG.zip
Avatar billede rasm Nybegynder
08. januar 2004 - 15:41 #16
desuden tror jeg lige at du skal sætte replace ind fordi den husker det altså ikke!
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:43 #17
Replace har ikke noget med at gøre, om den husker det. Farven er gemt i en cookie (en lille fil på brugerens computer).

Mit system husker farven perfekt. Hvis det ikke virker ved dig, så er det din browser der er noget galt med.
Avatar billede rasm Nybegynder
08. januar 2004 - 15:43 #18
selvom der er en cookie
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:44 #19
Prøv blot at vælge farven blå. Når dette er gjort, kan du blot lukke alle dine browser-vinduer. Næste gang du besøger http://www.powerzone.dk/BG/index.php, så vil siden stadig være blå.
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:44 #20
- men den husker ikke farven i dropdown-menu (hvis det var dét, du mente.). Det er der jo heller ingen grund til (eller hvad ?)
Avatar billede rasm Nybegynder
08. januar 2004 - 15:45 #21
nej men kan du ikke lave den så det er replace istedet for en cokkie?

Det skal gælde for allle
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:46 #22
Replace kan ikke huske farven. Du bliver nød til at bruge en cookie, hvis farven skal huskes!

Det vil også gælde for alle - undtagen der som har slået cookies fra. Og det er der altså næsten ingen der har.
Avatar billede rasm Nybegynder
08. januar 2004 - 15:48 #23
HALLO?

Replace sætter vel den farve man vælger ind i bgcolor="farve" ikke?
Avatar billede rasm Nybegynder
08. januar 2004 - 15:48 #24
det skal ændres i filen
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:49 #25
Nej. Det det er blot en variabel der gør det. Replace erstatter bare ordet "farve" med fx. #FFFFFF. Og det er , synes jeg, en mærkelig metode at bruge.

Den løsning jeg har givet dig er korrekt, og kan sagtens bruges !
Avatar billede rasm Nybegynder
08. januar 2004 - 15:50 #26
jeg er altså ny i php!
Avatar billede webcreator Nybegynder
08. januar 2004 - 15:52 #27
Ja, det kan jeg godt høre. Og derfor skulle du måske lytte til hvad jeg siger. Den løsning jeg giver dig, er korrekt.

Det der helt nøjagtigt sker er :

I bg-farve.php er der en form. Når trykker på "ændre farve"-knappen, så sendes den nye farve til bg-farve.php (ja, den samme fil). Her oprettes der en cookie, som indeholder farven. Når det er gjort, sendes brugeren automatisk over til index.php, hvor farve-ændringen kan ses med det samme.
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:04 #28
Har du flere spørgsmål til min løsning ?
Avatar billede rasm Nybegynder
08. januar 2004 - 16:13 #29
Nej men jeg vil gerne have at den gemmer det input enten i en MySQL DB eller i filen.....
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:32 #30
Er det fordi, det kun er _dig_ der må ændre farve i dit dokument ?
Jeg er gået ud fra, at alle dine brugere selv må vælge deres farve.
Avatar billede rasm Nybegynder
08. januar 2004 - 16:33 #31
ja nemlig det er kun admin der må!
Avatar billede rasm Nybegynder
08. januar 2004 - 16:35 #32
hallo må jeg gerne få bg.zip hva?

jeg kom til at slette den
Avatar billede rasm Nybegynder
08. januar 2004 - 16:35 #33
det andet kender jeg en der mangler
Avatar billede rasm Nybegynder
08. januar 2004 - 16:36 #34
altså det der er i bg.zip kender jeg en der mangler
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:36 #35
Aha !
Det giver jo et helt andet billede af sagen..
Det er da næsten overkill at lave den slags, når du kan ændre baggrundsfarven for alle dine dokumenter i et stylesheet ?!
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:37 #36
Så giv det til ham :-)
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:39 #37
Nåå, du mangler den. Herligt. Har også lige fjernet den :)
Må lige vente til lidt senere så.
Avatar billede rasm Nybegynder
08. januar 2004 - 16:40 #38
jamen det er jo til admins der ikke kender til css/html/php!
Avatar billede rasm Nybegynder
08. januar 2004 - 16:43 #39
gidder du lave det?
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:44 #40
Hm, er du ved at bygge et website, som kan administreres vha. et admin-modul ?

Du kan evt. kigge på http://www.powerzone.dk/powerzone/index.php?id=36
(Oplys korrekt information hvis du henter den !)
Avatar billede rasm Nybegynder
08. januar 2004 - 16:46 #41
nej jeg vil gerne lave det meste selv!

Men lige det her kender jeg ikke til!
Og det er desuden kun for en side man skal ændre farven permanent
Avatar billede rasm Nybegynder
08. januar 2004 - 16:51 #42
gidder du lave koden?
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:53 #43
Jeg har ikke lige tid nu. SKal se om jeg får tid til at se på det om nogle timer..
Avatar billede rasm Nybegynder
08. januar 2004 - 16:53 #44
har du en msn?
Avatar billede webcreator Nybegynder
08. januar 2004 - 16:55 #45
admin@powerzone.dk
Avatar billede rasm Nybegynder
08. januar 2004 - 16:57 #46
vil dyrefoto tilføje dig?
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