Avatar billede mrbs Nybegynder
29. januar 2004 - 02:23 Der er 7 kommentarer og
4 løsninger

Hvordan tilføjer man et break

Denne kode gør at man i en formular indtaster et navn som bliver smidt ud i en fil med navnet deltagerliste.txt.

Men som det er nu, skriver den bare navnet. Filen skla hentes ind til formatering af en php-fil, og skal derfor helst have tilføjet et <br> efter navnet...

Hvordan gør man det?

<?
}
else echo "Der er fejl i enten brugernavn eller password!";

}
}elseif($_GET['action']=="ny") {

    $fil = "deltagerliste.txt";

    if($_POST["navn"]) {
    $str = $_POST["navn"]."\n";
    }

    $fp = fopen($fil, r);

    if($fp) {

    $filArray = file($fil);
    $result = implode("", $filArray);
    $result = $str.$result;
    fclose($fp);
    }

    $fp = fopen($fil, w);

    if($fp) {

    fputs($fp, $result); 
    fclose($fp);
    echo "Dette navn blev tilføjet:" . $_POST["navn"];
        echo "<br><a href=java script:history.back()>Tilføj ny!</a><br>";
    }
}else{
?>
Avatar billede ponyboye Nybegynder
29. januar 2004 - 02:49 #1
<br>
Avatar billede ponyboye Nybegynder
29. januar 2004 - 02:52 #2
uha hvis >br> ikke virker så er det samme problem jeg har med data der bilver sendt. Undskyld forkert svar
Avatar billede ponyboye Nybegynder
29. januar 2004 - 02:52 #3
<br>
Avatar billede mrbs Nybegynder
29. januar 2004 - 02:59 #4
Aba???

Det fik jeg ikke helt fat i?

Det virker sikkert, men jeg ved ikke hvor jeg sætter det ind, og hvordan det skal stå i koden!
Avatar billede codebase Praktikant
29. januar 2004 - 03:26 #5
i text filen ligger line skift som \n og i html er et lineskift <br>
Du kan lave en:
$result = ereg_replace( "\n", "<br>" , $result);

før denne line:
$result = $str.$result;
Avatar billede martinbk Nybegynder
29. januar 2004 - 06:26 #6
lige en lille kommentar.

\n er et 100% UNIX komplaint linebreak

for dem som stadig sidder fast i windows tiden er \r\n nok en mere korrekt syntax
Avatar billede mrbs Nybegynder
29. januar 2004 - 10:50 #7
OK!
Men hvad skal jeg så skrive hvor for at få indsat denne string i .txt-filen:

Navn Efternavn<br>
Avatar billede codebase Praktikant
29. januar 2004 - 10:58 #8
ret $str = $_POST["navn"]."\n";
til $str = $_POST["navn"] . " " . $_POST["efternavn"] . "\n";

du skal ikke kaste <br> ned i din text fil, men replace \n når du udskriver filens indhold til skærmen.
Avatar billede mrbs Nybegynder
29. januar 2004 - 11:07 #9
Så er der nok et andet problem, for den skriver navnene ind på følgende måde:

Navn3
Navn2<br>Navn1<br>

- uden break efter det sidst indtastede, det bliver først tilføjet når man indtaster endnu et navn...
Avatar billede mrbs Nybegynder
29. januar 2004 - 11:07 #10
Koden ser sådan ud:
<?
}
else echo "Der er fejl i enten brugernavn eller password!";

}
}elseif($_GET['action']=="ny") {

    $fil = "deltagerliste.txt";

    if($_POST["navn"]) {
    $str = $_POST["navn"]."\n";
    }

    $fp = fopen($fil, r);

    if($fp) {

    $filArray = file($fil);
    $result = implode("", $filArray);
        $result = ereg_replace( "\n", "<br>" , $result);
    $result = $str.$result;
    fclose($fp);
    }

    $fp = fopen($fil, w);

    if($fp) {

    fputs($fp, $result); 
    fclose($fp);
    echo "Dette navn blev tilføjet:<br><br><b>" . $_POST["navn"];
        echo "</b><br><br>";
    echo "<a href=java script:history.back()>Tilføj ny!</a><br>";
    }
}else{
?>
Avatar billede mrbs Nybegynder
29. januar 2004 - 15:40 #11
Jeg fandt selv en løsning!

opretter bare en skjult form med indholdet "<br>"

Den tilføjer jeg bagefter, og nu virkre det!

I andre får lige lidt point alligevel som tak for hjælpen!
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