Avatar billede h4x0rsnack Nybegynder
30. august 2005 - 17:39 Der er 17 kommentarer og
1 løsning

Linjeskift skal blive til <br>

Hej.
Jeg er igang med at lave et artikel system men jeg kan altså ikke få det til at være sådan at når man laver linjeskift så bliver det lavet om til <br> jeg har prøvet med denne kode:

$artikel = nl2br($_POST[artikel]);

Nogen der kender en anden kode eller muligvis ved hvad der er galt i ovenstående kode?

På forhånd mange tak.
Avatar billede jaw Nybegynder
30. august 2005 - 18:08 #1
Får du ellers teksten lagt rigtigt i variablen, lige på nær at der mangler linieskift? Og kører du andet på $_POST['artikel'] ?
Avatar billede dustie Mester
31. august 2005 - 02:12 #2
Du kan prøve med $tekst = str_replace("\r\n", "<br />", $tekst); i mangel på bedre.
Avatar billede h4x0rsnack Nybegynder
31. august 2005 - 13:35 #3
jaw > Er ikke en ørn til PHP så forstår ikke hvad du mener.

dustie > Det virker ikke :S
Avatar billede jaw Nybegynder
31. august 2005 - 14:32 #4
Jeg mener, om $artikel indeholder det den skal. Prøv:

<?
$artikel = nl2br($_POST['artikel']);
echo $artikel;
?>

eller
<?
echo nl2br($_POST['artikel']);
?>

For også lige at kommentere dusties forslag, så udskifter han \r\n, som er Window's måde at lave linieskift på med <br>. Det kan gøres således:
<?
$artikel = str_replace("\r\n", "<br />", $_POST['artikel']);
echo $artikel;
?>
Avatar billede h4x0rsnack Nybegynder
31. august 2005 - 18:02 #5
Som sagt er jeg ikke en ørn.. Faktisk er jeg ret dårlig. Skal den der kode ikke godt nok placeres i den fil der gemmer teksten i databasen?
Avatar billede jaw Nybegynder
31. august 2005 - 18:04 #6
Tjoh, når du har konstateret at det virker. Men først og fremmest, så skal du have fundet ud af, om det virker eller ej.

Du kan også paste den fil der indsætter i databasen, måske der fejl i den som intet har at gøre med det vi laver lige nu. (Bare husk at fjerne username og pass til databasen).
Avatar billede h4x0rsnack Nybegynder
31. august 2005 - 18:18 #7
save.php:

<?
echo nl2br($_POST['artikel']);
?>
<style>
<!--
a{text-decoration:none}
//-->
</style>
<?
session_start();
if (session_is_registered("brugernavn") AND ("kodeord")) {
include "config.php";
$hent = mysql_query("SELECT * FROM community_avis WHERE brugernavn = '$_SESSION[brugernavn]'") or die(mysql_error());
$vis = mysql_fetch_array($hent);
?>

<body oncontextmenu="return false"ondragstart="return false"onselectstart="return false">
<?
if($vis[status] == "normal")
{
echo("<font color=red>Ingen adgang!</font>");
}
?>

<?
if($vis[status] == "ejer")
{
echo("");
?>
<html>

<head>

<link rel="stylesheet" HREF="../style.css" type="text/css">

</head>

</html>
<?

include("config.php");

//
// Start: Upload image
//

$ok=0;
if($_FILES["image"]["name"]) {
$size = $_FILES["image"]["size"] / 1024;
if($size > 0 && $size < 1023) {
$fra = $_FILES["image"]["tmp_name"];
$fra2 = $_FILES["image"]["name"];
$tilp = $_FILES["image"]["type"];
$tiltype = strstr($_FILES["image"]["type"],"/");
$tiltype = substr($tiltype,1);
if ($tiltype == "bmp" || $tiltype == "gif" || $tiltype == "pjpeg" || $tiltype == "x-png") {
$tiltype = str_replace("x-png","png",$tiltype);
$tiltype = str_replace("pjpeg","jpg",$tiltype);
$til = "billeder/".time().rand(0000,9979)."-".$fra2;
if(function_exists("move_uploaded_file")) {
move_uploaded_file($fra, $til);
$img = "$til";
$ok=1;
} else {
copy($fra, $til);
$img = "$til";
$ok=1;
}
}else {$error='<font color=red>Forkert fil-format</font>';}
}else {$error='<font color=red>Fil over 1 MB</font>';}
}else {$error='<font color=red>Ingen fil fundet</font>';}

//
// End: Upload image
//

if ($ok) {
$id = $row["id"];
$overskrift = $row["overskrift"];
$image = $row["image"];
$forfatter = $row["forfatter"];
$dato = date('d/m/Y');
$artikel = $row["artikel"];
mysql_query("INSERT INTO artikler_avis (overskrift, image, forfatter, dato, artikel) VALUES ('$_POST[overskrift]', '$img', '$_POST[forfatter]', '$dato', '$_POST[artikel]')");
mysql_close();
echo "Artiklen er tilføjet";
}
else {
echo "Kunne ikke tilføjes, pga.:<br>".$error;
}
?>
<?
}
?>

<?
if($vis[status] == "redaktør")
{
echo("");
?>
<html>

<head>

<link rel="stylesheet" HREF="style.css" type="text/css">

</head>

</html>
<?

include("config.php");

//
// Start: Upload image
//

$ok=0;
if($_FILES["image"]["name"]) {
$size = $_FILES["image"]["size"] / 1024;
if($size > 0 && $size < 1023) {
$fra = $_FILES["image"]["tmp_name"];
$fra2 = $_FILES["image"]["name"];
$tilp = $_FILES["image"]["type"];
$tiltype = strstr($_FILES["image"]["type"],"/");
$tiltype = substr($tiltype,1);
if ($tiltype == "bmp" || $tiltype == "gif" || $tiltype == "pjpeg" || $tiltype == "x-png") {
$tiltype = str_replace("x-png","png",$tiltype);
$tiltype = str_replace("pjpeg","jpg",$tiltype);
$til = "billeder/".time().rand(0000,9979)."-".$fra2;
if(function_exists("move_uploaded_file")) {
move_uploaded_file($fra, $til);
$img = "$til";
$ok=1;
} else {
copy($fra, $til);
$img = "$til";
$ok=1;
}
}else {$error='<font color=red>Forkert fil-format</font>';}
}else {$error='<font color=red>Fil over 1 MB</font>';}
}else {$error='<font color=red>Ingen fil fundet</font>';}

//
// End: Upload image
//

if ($ok) {
$id = $row["id"];
$overskrift = $row["overskrift"];
$image = $row["image"];
$forfatter = $row["forfatter"];
$dato = date('d/m/Y');
$artikel = $row["artikel"];
mysql_query("INSERT INTO artikler_avis (overskrift, image, forfatter, dato, artikel) VALUES ('$_POST[overskrift]', '$img', '$_POST[forfatter]', '$dato', '$_POST[artikel]')");
mysql_close();
echo "Artiklen er tilføjet";
}
else {
echo "Kunne ikke tilføjes, pga.:<br>".$error;
}
?>
<?
}
?>

<?
if($vis[status] == "chef reporter")
{
echo("");
?>

<html>

<head>

<link rel="stylesheet" HREF="style.css" type="text/css">

</head>

<body oncontextmenu="return false"></html>

<?

include("config.php");

//
// Start: Upload image
//

$ok=0;
if($_FILES["image"]["name"]) {
$size = $_FILES["image"]["size"] / 1024;
if($size > 0 && $size < 1023) {
$fra = $_FILES["image"]["tmp_name"];
$fra2 = $_FILES["image"]["name"];
$tilp = $_FILES["image"]["type"];
$tiltype = strstr($_FILES["image"]["type"],"/");
$tiltype = substr($tiltype,1);
if ($tiltype == "bmp" || $tiltype == "gif" || $tiltype == "pjpeg" || $tiltype == "x-png") {
$tiltype = str_replace("x-png","png",$tiltype);
$tiltype = str_replace("pjpeg","jpg",$tiltype);
$til = "billeder/".time().rand(0000,9979)."-".$fra2;
if(function_exists("move_uploaded_file")) {
move_uploaded_file($fra, $til);
$img = "$til";
$ok=1;
} else {
copy($fra, $til);
$img = "$til";
$ok=1;
}
}else {$error='<font color=red>Forkert fil-format</font>';}
}else {$error='<font color=red>Fil over 1 MB</font>';}
}else {$error='<font color=red>Ingen fil fundet</font>';}

//
// End: Upload image
//

if ($ok) {
$id = $row["id"];
$overskrift = $row["overskrift"];
$image = $row["image"];
$forfatter = $row["forfatter"];
$dato = date('d/m/Y');
$artikel = $row["artikel"];
mysql_query("INSERT INTO artikler_avis (overskrift, image, forfatter, dato, artikel) VALUES ('$_POST[overskrift]', '$img', '$_POST[forfatter]', '$dato', '$_POST[artikel]')");
mysql_close();
echo "Artiklen er tilføjet";
}
else {
echo "Kunne ikke tilføjes, pga.:<br>".$error;
}
?>

<?
}
?>

<?
if($vis[status] == "reporter")
{
echo("");
?>

<html>

<head>

<link rel="stylesheet" HREF="style.css" type="text/css">

</head>

<body oncontextmenu="return false"></html><?

include("config.php");

//
// Start: Upload image
//

$ok=0;
if($_FILES["image"]["name"]) {
$size = $_FILES["image"]["size"] / 1024;
if($size > 0 && $size < 1023) {
$fra = $_FILES["image"]["tmp_name"];
$fra2 = $_FILES["image"]["name"];
$tilp = $_FILES["image"]["type"];
$tiltype = strstr($_FILES["image"]["type"],"/");
$tiltype = substr($tiltype,1);
if ($tiltype == "bmp" || $tiltype == "gif" || $tiltype == "pjpeg" || $tiltype == "x-png") {
$tiltype = str_replace("x-png","png",$tiltype);
$tiltype = str_replace("pjpeg","jpg",$tiltype);
$til = "billeder/".time().rand(0000,9979)."-".$fra2;
if(function_exists("move_uploaded_file")) {
move_uploaded_file($fra, $til);
$img = "$til";
$ok=1;
} else {
copy($fra, $til);
$img = "$til";
$ok=1;
}
}else {$error='<font color=red>Forkert fil-format</font>';}
}else {$error='<font color=red>Fil over 1 MB</font>';}
}else {$error='<font color=red>Ingen fil fundet</font>';}

//
// End: Upload image
//

if ($ok) {
$id = $row["id"];
$overskrift = $row["overskrift"];
$image = $row["image"];
$forfatter = $row["forfatter"];
$dato = date('d/m/Y');
$artikel = $row["artikel"];
mysql_query("INSERT INTO artikler_avis (overskrift, image, forfatter, dato, artikel) VALUES ('$_POST[overskrift]', '$img', '$_POST[forfatter]', '$dato', '$_POST[artikel]')");
mysql_close();
echo "Artiklen er tilføjet";
}
else {
echo "Kunne ikke tilføjes, pga.:<br>".$error;
}
?>

<?
}
?>

<?
if($vis[status] == "prøve reporter")
{
echo("");
?>
<html>

<head>

<link rel="stylesheet" HREF="style.css" type="text/css">

</head>

<body oncontextmenu="return false">

</html>
<?

include("config.php");

//
// Start: Upload image
//

$ok=0;
if($_FILES["image"]["name"]) {
$size = $_FILES["image"]["size"] / 1024;
if($size > 0 && $size < 1023) {
$fra = $_FILES["image"]["tmp_name"];
$fra2 = $_FILES["image"]["name"];
$tilp = $_FILES["image"]["type"];
$tiltype = strstr($_FILES["image"]["type"],"/");
$tiltype = substr($tiltype,1);
if ($tiltype == "bmp" || $tiltype == "gif" || $tiltype == "pjpeg" || $tiltype == "x-png") {
$tiltype = str_replace("x-png","png",$tiltype);
$tiltype = str_replace("pjpeg","jpg",$tiltype);
$til = "billeder/".time().rand(0000,9979)."-".$fra2;
if(function_exists("move_uploaded_file")) {
move_uploaded_file($fra, $til);
$img = "$til";
$ok=1;
} else {
copy($fra, $til);
$img = "$til";
$ok=1;
}
}else {$error='<font color=red>Forkert fil-format</font>';}
}else {$error='<font color=red>Fil over 1 MB</font>';}
}else {$error='<font color=red>Ingen fil fundet</font>';}

//
// End: Upload image
//

if ($ok) {
$id = $row["id"];
$overskrift = $row["overskrift"];
$image = $row["image"];
$forfatter = $row["forfatter"];
$dato = date('d/m/Y');
$artikel = $row["artikel"];
mysql_query("INSERT INTO artikler_avis (overskrift, image, forfatter, dato, artikel) VALUES ('$_POST[overskrift]', '$img', '$_POST[forfatter]', '$dato', '$_POST[artikel]')");
mysql_close();
echo "Artiklen er tilføjet";
}
else {
echo "Kunne ikke tilføjes, pga.:<br>".$error;
}
?>

<?
}
?>

<?
}else{
print "<font color=red>Du er ikke logget ind!</font>";
}
?>
Avatar billede jaw Nybegynder
31. august 2005 - 18:41 #8
Okey, du gemmer den bare i tabellen uden at køre nl2br() først, er det meningen? Det vil jeg også selv gøre, hvor bruger du den så igen?

Og jeg kan se, at du har echo nl2br($_POST['artikel']) aller øverst i filen, vises den korrekt dér, eller er det stadig ud i én lang smørre?
Avatar billede dustie Mester
31. august 2005 - 18:44 #9
Underligt det ikke virker. Jeg bruger det ellers selv uden problemmer. Så må fejlen ligge et andet sted :)
Avatar billede jaw Nybegynder
31. august 2005 - 18:45 #10
Jeg vil næsten også æde min gamle hat på, at funktionen virker, men at den bare bliver misforstået eller brugt forkert :) Det er så bare lige hvor og hvorfor...
Avatar billede dustie Mester
31. august 2005 - 18:50 #11
Ja de burde jo virke begge to, men jeg kan dog heller ikke lige finde fejlen.
Avatar billede jaw Nybegynder
31. august 2005 - 18:52 #12
Men okey, så laver vi bare en simpel test fra bunden:

Opret en helt ny fil, med følgende indhold:

<form action="<?=$_SERVER['PHP_SELF'];?>" method="post">
<textarea name="test"></textarea>
<input type="submit">
</form>
<?
if(isset($_POST['test'])) {
  echo nl2br($_POST['test']);
}
?>

...og afprøv den.
Avatar billede h4x0rsnack Nybegynder
31. august 2005 - 21:01 #13
http://www.snuzzer.dk/test.php > Det fungerer fint :S
Avatar billede jaw Nybegynder
31. august 2005 - 21:09 #14
Jeps, det gør det nemlig. Så skal du nu bestemme dig for, om du klare formateringen når du sætter data IND i databasen, eller når du henter dem UD? (Som sagt tidligere, gør jeg det altid selv når jeg henter dem ud!)
Avatar billede h4x0rsnack Nybegynder
31. august 2005 - 21:13 #15
Jeg synes da det er lidt lige meget.
Avatar billede jaw Nybegynder
31. august 2005 - 21:19 #16
Tjoh, er det måske også, men der kan være situationer, f.eks. hvis du vil redigere i teksten, at det kan give lidt bøvl hvis formateringen sker når du indsætter dataene.

Men hvad bruger du dataene til? Hvor udhenter du dem, og udskriver dem til en bruger? For så synes jeg, at du skal indsætte nl2br() dér.

Alternativt, hvis du vil have det når dataene bliver indsat, skal du i tilpasse, så det bliver:
mysql_query("INSERT INTO artikler_avis (overskrift, image, forfatter, dato, artikel) VALUES ('".$_POST['overskrift']."', '$img', '".$_POST['forfatter']."', '$dato', '".nl2br($_POST['artikel'])."')");

Jeg har også lige rettet, så du overholder den normale syntaks for php, hvor man bl.a. bør have ' eller " omkring sine indekser i arrays, altså: $row['felt'].
Avatar billede h4x0rsnack Nybegynder
31. august 2005 - 21:30 #17
MANGE TAK! Det virker nu! <3!
Kan du så ikke lige give et svar jaw? :P
Avatar billede jaw Nybegynder
31. august 2005 - 22:12 #18
Det kan du tro jeg kan :) Og selv tak...
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

IT-JOB