Avatar billede baitianlong Nybegynder
13. august 2004 - 16:58 Der er 7 kommentarer og
1 løsning

linieskift fra database

Jeg har et textarea, hvor man kan skrive noget og gemme i databasen. De linieskift man trykker, kommer med i databasen, kan jeg se i phpmyadmin, men når jeg henter det og viser det, er der ikke linieskift med...

Det er sikkert et ganske normalt problem, jeg ved bare ikke lige hvad man gør.

Hvad gør man ?

...og så lige et lille bi-spørgamål. Jeg har taget al funktionaliteten fra hele systemet og lagt i en php-fil, som jeg så includer og kalder funktioner fra på hver side. Er det smart/måden at gøre det på ?
Avatar billede repsak Nybegynder
13. august 2004 - 17:03 #1
ang. dit første problem:
linjeskift er et tegn lige som a, b og c. Du kan ikke se tegnet, men det er \n. Når du gemmer teksten
"her kommer jeg
dada"
bliver det gemt som
"her kommer jeg\ndada"

Derfor skal du replace \n med <br /> for at html-fortolkeren kan lave linjeskiftet. (dog benytter textbox ikke <br /> men \n)
Avatar billede detox Nybegynder
13. august 2004 - 17:06 #2
php har en function beregnet til formålet:
http://dk2.php.net/manual/en/function.nl2br.php
Avatar billede repsak Nybegynder
13. august 2004 - 17:12 #3
detox -> tak ;-) Jeg er ikke php-programmør så jeg måtte nøjes med at danne overblikket hehehe
Avatar billede baitianlong Nybegynder
13. august 2004 - 17:33 #4
Det var smukt. Den virkede fint.

Hvad siger i til mit bi-spørgsmål... Er det ikke åndssvagt at have en funktion, der f.eks ser sådan her ud:

---------------------------------------------------------------------
function makeEmailFields() {
    mysql_connect("localhost", "xxxxxxx", "xxxxxx");
    mysql_select_db("xxxxxxx");
    $result = mysql_query("SELECT * FROM newsemail ORDER by email ASC");
    $selmail = "<select name=\"email\" size=\"20\" onchange=\"syncSels(this)\"><option value=\"\">";
    while($i < 60) {
        $selmail .= "&nbsp;";
        $i ++;
    }
    $selmail .= "</option>";
    $selname = "<select name=\"name\" size=\"20\" onchange=\"syncSels(this)\"><option value=\"\">";
    while($j < 60) {
        $selname .= "&nbsp;";
        $j ++;
    }
    $selname .= "</option>";
    $selorg = "<select name=\"org\" size=\"20\" onchange=\"syncSels(this)\"><option value=\"\">";
    while($k < 60) {
        $selorg .= "&nbsp;";
        $k ++;
    }
    $selorg .= "</option>";
        while($row = mysql_fetch_array($result)) {
        $selmail .= "<option value=\"".$row['email']."\">".$row['email']."</option>";
        $selname .= "<option value=\"".$row['email']."\">".$row['name']."</option>";
        $selorg .= "<option value=\"".$row['email']."\">".$row['org']."</option>";
    }
    print "<tr><td><center><b>Email</b><br>".$selmail."</select></td>";
    print "<td><center><b>Name</b><br>".$selname."</select></td>";
    print "<td><center><b>Organization</b><br>".$selorg."</select></td></tr>";
    mysql_close();
}
-------------------------------------------------------------------

For det første laver den et html table, og for det andet henviser den til en javascript funktion, som er på den side hvor jeg bruger den. Det er vist ike så fedt ?!?! Et par kommentarer ?!
Avatar billede repsak Nybegynder
14. august 2004 - 00:27 #5
som sagt er jeg ikke php-programmør, så jeg vil ikke kaste mig ud i noget som jeg ikke kan forsvare :-)
Sorry
Avatar billede detox Nybegynder
14. august 2004 - 01:33 #6
Det er ret praktisk at have en samling funktioner i en fil, som man så kan include på flere forskellige sider. Mht.den konkrete funktion du viser, kunne du så ikke bare ligge javascript funktionen i filen osse?
Avatar billede baitianlong Nybegynder
20. august 2004 - 01:16 #7
detox, du skal lige lægge et svar her også. Jeg har refactored lidt, og er ok tilfreds med det indtil videre...
Avatar billede detox Nybegynder
20. august 2004 - 01:32 #8
værsgo' da
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