For ellers laver du det bare som en slags gæstebog. Du har en side hvor du kan skrive nyheden. Den smider så det skrevne i en database. Så henter den siden som viser nyhederne resultaterne frem igen.
Det eneste som er anderledes er bare at den fil som man skriver nyheden i skal være beskyttet med et password...
if($login){ //hvis en person prøver at logge ind if($HTTP_POST_VARS[\'password\'] == \'dit_kodeord\'){ //hvis han/hun har skrevet det rigtige password setcookie(\'user\', \'approve\', time()+600); //laver en cookie - personen er inde i 10 minutter } }
if($HTTP_COOKIE_VARS[\'user\'] != \'approve\'){ //hvis brugeren ikke er logget ind ?> Det kræver password at se denne side... <FORM METHOD=POST ACTION=\"\"> <INPUT TYPE=\"password\" VALUE=\"password\"> <INPUT TYPE=\"hidden\" NAME=\"ok\" VALUE=\"ok\"> <INPUT TYPE=\"submit\" VALUE=\"Send\"> </FORM> <?php } else{ if($skriv){ // hvis en person prøver at sende en artikel if(!$HTTP_POST_VARS[\'nyhed\'] || !$HTTP_POST_VARS[\'overskrift\']){ echo \'Du skal huske at udfylde både overskrift og nyhed.\'; } else{ $input = \"<font size=\'4\'>$overskrift</font><br> $nyhed<br><hr><br>\";//ved at ændre på denne linie bestemmer du hvordan nyheden kommer til at se ud //her gemmes der i filen $fp = fopen (\"nyhed.txt\", \"a\"); fwrite($fp, $indput); fclose ($fp);
} } ?> <!-- Viser den form som brugeren skriver nyheden i --> <FORM METHOD=POST ACTION=\"\"> Overskriften:<br> <INPUT TYPE=\"text\" NAME=\"overskrift\"><BR> Nyheden <br> <TEXTAREA NAME=\"nyhed\" ROWS=\"10\" COLS=\"50\"></TEXTAREA> <INPUT TYPE=\"hidden\" NAME=\"skriv\" VALUE=\"ok\"> <INPUT TYPE=\"submit\" VALUE=\"Send\"> </FORM>
Jeg tror problemet er at du er kommet til at gemme det hele i 1 fil. Så prøver den først at inkludere de filer som skal inkluderes, men den er jo ikke lavet før scriptet er kørt. skriv.php skal køres 1 gang før vis.php virker.
Der hvor der står: \"vis.php\" i min kode skal du gemme det som står lige neden under vis.php
Jeg har rettet fejl og testet scriptet på min egen computer. Det virker nu
Indholdet af skriv.php
<?php if($login){ //hvis en person prøver at logge ind if($HTTP_POST_VARS[\'password\'] == \'ok\'){ //hvis han/hun har skrevet det rigtige password setcookie(\'user\', \'approve\', time()+600); //laver en cookie - personen er inde i 10 minutter } }
?> <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME=\"Generator\" CONTENT=\"EditPlus\"> <META NAME=\"Author\" CONTENT=\"\"> <META NAME=\"Keywords\" CONTENT=\"\"> <META NAME=\"Description\" CONTENT=\"\"> </HEAD> <BODY>
<?php
if($HTTP_COOKIE_VARS[\'user\'] != \'approve\'){ //hvis brugeren ikke er logget ind ?> Det kræver password at se denne side... <FORM METHOD=POST ACTION=\"\"> <INPUT TYPE=\"password\" NAME=\"password\"> <INPUT TYPE=\"hidden\" NAME=\"login\" VALUE=\"ok\"> <INPUT TYPE=\"submit\" VALUE=\"Send\"> </FORM> <?php echo $HTTP_POST_VARS[\'password\']; } else{ if($skriv){ // hvis en person prøver at sende en artikel if(!$HTTP_POST_VARS[\'nyhed\'] || !$HTTP_POST_VARS[\'overskrift\']){ echo \'Du skal huske at udfylde både overskrift og nyhed.\'; } else{ $input = \"<font size=\'4\'><u>$overskrift</U></font><br>\". nl2br($nyhed).\'<br><hr><br>\';//ved at ændre på denne linie bestemmer du hvordan nyheden kommer til at se ud //her gemmes der i filen $fp = fopen (\"nyhed.txt\", \"a\"); fwrite($fp, $input); fclose ($fp);
} } ?> <!-- Viser den form som brugeren skriver nyheden i --> <FORM METHOD=POST ACTION=\"\"> Overskriften:<br> <INPUT TYPE=\"text\" NAME=\"overskrift\"><BR> Nyheden <br> <TEXTAREA NAME=\"nyhed\" ROWS=\"10\" COLS=\"50\"></TEXTAREA> <INPUT TYPE=\"hidden\" NAME=\"skriv\" VALUE=\"ok\"> <INPUT TYPE=\"submit\" VALUE=\"Send\"> </FORM> <a href=\"vis.php\">Se det skrevne</a>
Barefoot, ok nu virker det =) , men hvordan får jeg den Nyeste nyhed til at være øverst ? Og kan det komme i dette design: www.teenz.dk/tmd/index.php ?? Hvis 50pts er for lidt, så bare sig til
Undskyld at jeg var væk så længe - forresten 50 points? Du lovede mig 100 bare for at lave det andet... men neverming. Altså, jeg antager at det er de nyste indlæg som bliver skrevet i bunde. Så kan du ikke bare vise filen. Den skal ligges i et array som man vender på hovedet. Derefter kan det udskrives:
Indholdet af vis.php <html> <head> </head> <body> <?php $array = file(\'nyhed.txt\'); //Henter filen i et array $new_Array = array_reverse($array); //Vender arrayet om
for($i=0; $i<=sizeof($new_array); $i++){ //Løber hele arrayet igennem echo $new_array[$i]; //Udskriver hver enkelt linie i det omvendte array } ?> <br><br> <a href=\"skriv.php\">Skriv igen</a> </body> </html>
Måske er det bare mig, men findes den slags ikke overalt?
Jeg ved godt at eksperten også skal være for newbees, faktisk er den vel lavet for denne gruppe, men når det drejer sig om noget man i løbet af 10 sek. kan finde på www.netcoders.dk eller et andet sted, så synes jeg altså det må være nok at stikke et link.
Jeg forsøger ikke at være negativ, jeg smider bare lige min mening ind, da jeg synes at der efterhånden er lidt for mange \"standard-indlæg\". Det er lige før at man skal til at oprette en faq, nøjagtig som de gør i mange newsgroups, netop med henblik på newbees.
izmkr => Det har du ret i og jeg kunne ikke være mere enig på mange punkter. Personligt synes jeg at personlig hjælp er så meget federe end et link, men når spørgeren bare vil have en løsning kunne et link være ligeså godt. Desværre er det ikke sådan at folk spørger om en metode eller et hint. De vil have hele løsninger færdige. Og der irriterer da også mig at jeg tror jeg hjælper en på vej som næsten har løsningen selv, og så i næste indlæg kan personen ikke få koden til at virke på grund af en lille parse error fordi at der mangler en semikolon!
Synes godt om
Ny brugerNybegynder
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.