Avatar billede kulip Nybegynder
10. september 2006 - 16:02 Der er 24 kommentarer

Stort bogstav efter punktum

Hejsa, jeg har dette her script, til min kommentar system, men jeg vil gerne have at den laver stort bogstave efter hver punktum i både nyhed, og kommentarer.

<?php
session_start();
if (isset($_SESSION["s_navn"]))$id = $_SESSION[s_id];
?>
<html>


<head>
<meta http-equiv="Content-Language" content="da">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>VHCamp #4 - Lan event i Aalborg området d. 8 - 9 december</title>
</head>

<body bgcolor="#000000" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF" text="#FFFFFF">

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</p>
<table border="0" cellpadding="0" cellspacing="0" width="1062" height="927" id="table6">
    <!-- MSTableType="layout" -->
    <tr>
    <td colspan="7" valign="top" height="150">
    <img border="0" src="testlogo.jpg" width="1062" height="150"></td>
        </tr>
    <tr>
        <td valign="top" bordercolor="#FFFFFF" bgcolor="#FFFFFF" background="bg.jpg" rowspan="2">
        <!-- MSCellType="NavBody" -->
        <p align="right">
        <img border="0" src="hovedmenu.jpg" width="150" height="30"></p>
        <table border="0" width="100%" id="table7" cellspacing="0" cellpadding="0">
            <tr>
                <td><font color="#FFFFFF" face="Tahoma" size="2">
                <a href="index.php"><span style="text-decoration: none">Forside</span></a></font></td>
            </tr>
            <tr>
                <td><font color="#FFFFFF" face="Tahoma" size="2">
                <a href="historie.php"><span style="text-decoration: none">
                Historie</span></a></font></td>
            </tr>
            <tr>
                <td><font color="#FFFFFF" face="Tahoma" size="2">
                <a href="information.php"><span style="text-decoration: none">
                Information</span></a></font></td>
            </tr>
            <tr>
                <td><font color="#FFFFFF" face="Tahoma" size="2">
                <a href="tilmelding.php"><span style="text-decoration: none">
                Tilmelding</span></a></font>
                </td>
            </tr>
            <tr>
                <td><font color="#FFFFFF" face="Tahoma" size="2">
                <a href="regler.php"><span style="text-decoration: none">Regler</span></a></font></td>
            </tr>
            <tr>
                <td><font color="#FFFFFF" face="Tahoma" size="2">
                <a href="kontakt.php"><span style="text-decoration: none">
                Kontakt</span></a></font></td>
            </tr>
        </table>
        <p align="right">&nbsp;</td>
        <td>&nbsp;</td>
        <td valign="top" colspan="3">
        <!-- MSCellType="ContentBody" -->
        <img border="0" src="nyheder.jpg"></td>
        <td>&nbsp;</td>
        <td valign="top" height="30">
        <img border="0" src="sponsorer.jpg" width="154" height="30"></td>
        </tr>
    <tr>
        <td>&nbsp;</td>
        <td valign="top" bgcolor="#800080" background="bg.jpg" rowspan="6" colspan="3">
        <!-- MSCellType="ContentBody" -->

<?php
include("sql/db_ind.inc");

if (isset($_GET['id'])) {
$id = $_GET['id'];
$nyhed = mysql_query("SELECT * FROM news2 WHERE id = '$id'") or die (mysql_error());
$r = mysql_fetch_array($nyhed);
$antal2 = mysql_num_rows($nyhed);

//Printer valgte nyhed ud
echo "<b><u>Overskrift:</u></b><br>".$r['overkrift'];
echo "<br><b><u>Nyhed:</u></b><br>".$r['news'];
echo "<br><br>Skrevet af <i>".$r['af']." Den ".$r['dato'];
echo "</i>";
}
$mysql = mysql_query("SELECT * FROM nyhedskom WHERE nyhedsid = '$id' ORDER BY id ASC");
while ($row = mysql_fetch_array($mysql)) {
$id2 = $row[id];
?>
<? echo "<hr><b>Kommentar:</b><br>".$row['indhold']; ?>
<? echo "<br><b>Forfatter:</b>".$row[brugernavn]; ?>
<? echo "<br><b>Dato:</b>".$row['dato']; ?>
<?php
session_start();
if (isset($_SESSION['s_rang']) && $_SESSION['s_rang'] == "admin")

{
?>
<? echo "<br><a href=sletkom.php?id=$id2>(Slet kommentar)</a>"; ?>
<?
}
}
?>
<?php
session_start();
if (isset($_SESSION["s_navn"]))
{
$id = $_GET[id];
$brugernavn = $_SESSION[s_navn];
echo "<form action=nyhedkommentar.php?id=$id method=post>
<b>Svar på nyheden<br></b>
<textarea name=indhold cols=50 rows=10></textarea>
<b><br>Forfatter:<br></b><input type='text' size='51' name='brugernavn' readonly value='$_SESSION[s_navn]'><br>
<input type=submit value=Opret>
</p>
</form>";
echo "<center>";
echo '<table border="1" width="43%" id="table1" cellspacing="0" cellpadding="0" height="131">
    <tr>
        <td>
        <table border="0" width="100%" id="table3" cellspacing="0" cellpadding="0">
            <tr>
                <td>
                <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>Praktiske informationer</b> </td>
            </tr>
        </table>
        <table border="0" width="127%" id="table2" cellspacing="0" cellpadding="0">
            <tr>
                <td><b>Type</b></td>
                <td><b>Kode</b></td>
                <td width="256"><b>Resultat</b></td>
            </tr>
            <tr>
                <td>Fed</td>
                <td>&lt;b&gt;Tekst&lt;/b&gt;</td>
                <td width="256"><b>Tekst</b></td>
            </tr>
            <tr>
                <td>Kursiv</td>
                <td>&lt;i&gt;Tekst&lt;/i&gt;</td>
                <td width="256"><i>Tekst</i></td>
            </tr>
            <tr>
                <td>Understreg</td>
                <td>&lt;u&gt;Tekst&lt;/u&gt;</td>
                <td width="256"><u>Tekst</u></td>
            </tr>
            <tr>
                <td>Link</td>
                <td>&lt;url&gt;vhcamp.dk&lt;/url&gt;</td>
                <td width="270"><a href="http://vhcamp.dk">
                <font color="#FFFFFF">Vhcamp.dk</font></a></td>
            </tr>
        </table>
        </td>
    </tr>
</table>';
}
else
{
echo "<br><br>Login for at skrive kommentar";
}
?>
        <td height="284">&nbsp;</td>
        <td valign="top" background="bg.jpg" rowspan="4">
        <a href="pe.php">
        <img border="0" src="pe.jpg"></a><table border="0" width="100%" id="table8" cellspacing="0" cellpadding="0">
            <tr>
                <td><a href="tra.php"><img border="0" src="tra.jpg"></a></td>
            </tr>
            <tr>
                <td><a href="proffdata.php"><img border="0" src="proffdata.jpg"></a></td>
            </tr>
            </table>
        &nbsp;</td>
    </tr>
    <tr>
        <td></td>
        <td></td>
        <td height="5"></td>
        </tr>
    <tr>
        <td valign="top" bordercolor="#FFFFFF" bgcolor="#FFFFFF" background="bg.jpg" rowspan="3">
        <!-- MSCellType="NavBody" -->
        <img border="0" src="Image17.jpg" width="150" height="30"><p>
        <!--webbot bot="HTMLMarkup" startspan --><?php
session_start();
?>
<html>
<head>
</head>
<body bgcolor="#EFEDED">


<?php
session_start();
if (isset($_SESSION["s_navn"]))
{
$id = $_SESSION[s_id];
?>
<? echo "<a href='minprofil.php?id=$id'><span style='text-decoration: none'>Min Profil</span></a>
<br><a href='mineoplysninger.php?id=$id'><span style='text-decoration: none'>Mine Oplysninger</span></a>
<br><a href='minklan.php?id=$id'><span style='text-decoration: none'>Mit Hold</span></a>
<br><a href=logud.php><span style='text-decoration: none'>Logud</span></a>"; ?>
<?
}
?>
<font size="2" face="Tahoma"><?php
session_start();
if (isset($_SESSION['s_rang']) && $_SESSION['s_rang'] == "admin")

{
?>
<? echo "<br><br><a href='add_news.php'><span style='text-decoration: none'>Tilføj nyhed</span></a>"; ?>
<? echo "<br><a href='del_news.php'><span style='text-decoration: none'>Slet nyhed</span></a>"; ?>
<?
}
?><!--webbot bot="HTMLMarkup" endspan --></td>
        <td>&nbsp;</td>
        <td height="30">&nbsp;</td>
        </tr>
    <tr>
        <td>&nbsp;</td>
        <td height="144">&nbsp;</td>
        </tr>
    <tr>
        <td></td>
        <td></td>
        <td height="5"></td>
        </tr>
    <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td height="156">&nbsp;</td>
    </tr>
    <tr>
        <td width="150">&nbsp;</td>
        <td width="9">&nbsp;</td>
        <td width="368">&nbsp;</td>
        <td width="13">&nbsp;</td>
        <td width="358">&nbsp;</td>
        <td width="10">&nbsp;</td>
        <td height="123" width="154">&nbsp;</td>
    </tr>
</table>

</body>

</html>

På forhånd tak
Avatar billede nielle Nybegynder
10. september 2006 - 16:12 #1
Denne her laver det første bogstav efter et punktum om til stort:

$tekst = preg_replace("#\.\s*(\w)#e", "strtoupper('\\1')", $tekst);
Avatar billede kulip Nybegynder
10. september 2006 - 16:13 #2
hvor skal den sættes ind henne?
Avatar billede nielle Nybegynder
10. september 2006 - 16:16 #3
Du trækker din tekst ud af din database. Dernæst skal den puttes igennem den der, og først derefter udskrifer
Avatar billede kulip Nybegynder
10. september 2006 - 16:33 #4
det forstår jeg ikke.
Avatar billede nielle Nybegynder
10. september 2006 - 16:38 #5
Start med at finde den, eller de linjer, hvor at du får den tekst ud fra databasen som skal efterbehandles. Hvordan ser disse ud?
Avatar billede kulip Nybegynder
10. september 2006 - 16:40 #6
$nyhed = mysql_query("SELECT * FROM news2 WHERE id = '$id'") or die (mysql_error());

$mysql = mysql_query("SELECT * FROM nyhedskom WHERE nyhedsid = '$id' ORDER BY id ASC");
Avatar billede nielle Nybegynder
10. september 2006 - 16:42 #7
Ok, dernæst findet du de tilsvarende linjer, hvor at teksten bliver udskrevet på din side.
Avatar billede kulip Nybegynder
10. september 2006 - 16:43 #8
$nyhed = mysql_query("SELECT * FROM news2 WHERE id = '$id'") or die (mysql_error());
$r = mysql_fetch_array($nyhed);
$antal2 = mysql_num_rows($nyhed);

//Printer valgte nyhed ud
echo "<b><u>Overskrift:</u></b><br>".$r['overkrift'];
echo "<br><b><u>Nyhed:</u></b><br>".$r['news'];
echo "<br><br>Skrevet af <i>".$r['af']." Den ".$r['dato'];
echo "</i>";
}

------------------------------------------------------------------

$mysql = mysql_query("SELECT * FROM nyhedskom WHERE nyhedsid = '$id' ORDER BY id ASC");
while ($row = mysql_fetch_array($mysql)) {
$id2 = $row[id];
?>
<? echo "<hr><b>Kommentar:</b><br>".$row['indhold']; ?>
<? echo "<br><b>Forfatter:</b>".$row[brugernavn]; ?>
<? echo "<br><b>Dato:</b>".$row['dato']; ?>
Avatar billede nielle Nybegynder
10. september 2006 - 16:49 #9
Ok, i stedet for blot at udskrive nyhedsteksen direkte, så lægger du den i en variabel (kaldet $news nedenfor). Den sender du så igennem min kodestump. Det ender med at se nogenlunde sådan her ud:


$nyhed = mysql_query("SELECT * FROM news2 WHERE id = '$id'") or die (mysql_error());
$r = mysql_fetch_array($nyhed);
$antal2 = mysql_num_rows($nyhed);

$news = $r['news'];
$news = preg_replace("#\.\s*(\w)#e", "strtoupper('\\1')", $news);

//Printer valgte nyhed ud
echo "<b><u>Overskrift:</u></b><br>".$r['overkrift'];
echo "<br><b><u>Nyhed:</u></b><br>".$news;
echo "<br><br>Skrevet af <i>".$r['af']." Den ".$r['dato'];
echo "</i>";
}
Avatar billede kulip Nybegynder
10. september 2006 - 16:50 #10
hvad så med den anden?
Avatar billede nielle Nybegynder
10. september 2006 - 16:53 #11
Det skal gøres på samme måde, men jeg synes at du salv skulle prøve at tage den.
Avatar billede kulip Nybegynder
10. september 2006 - 16:54 #12
$mysql = mysql_query("SELECT * FROM nyhedskom WHERE nyhedsid = '$id' ORDER BY id ASC");
while ($row = mysql_fetch_array($mysql)) {
$id2 = $row[id];

$news = $row['news'];
$news = preg_replace("#\.\s*(\w)#e", "strtoupper('\\1')", $news);

echo "<hr><b>Kommentar:</b><br>".$row['indhold'];
echo "<br><b>Forfatter:</b>".$row[brugernavn];
echo "<br><b>Dato:</b>".$row['dato']; ?>

eller hvad :D?
Avatar billede nielle Nybegynder
10. september 2006 - 16:55 #13
Ikke helt. Feltet hedder jo "indhold" i dette tilfælde.
Avatar billede kulip Nybegynder
10. september 2006 - 16:56 #14
når ja, men kan se det ikke virker, den laver det godt nok stort, men den sletter også punktum.
Avatar billede nielle Nybegynder
10. september 2006 - 16:58 #15
Det er bare en mindre fejl. Ret:

$news = preg_replace("#\.\s*(\w)#e", "strtoupper('\\1')", $news);

- til:

$news = preg_replace("#\.\s*(\w)#e", "strtoupper('. \\1')", $news);
Avatar billede kulip Nybegynder
10. september 2006 - 16:58 #16
okay, men jeg har prøvet

$mysql = mysql_query("SELECT * FROM nyhedskom WHERE nyhedsid = '$id' ORDER BY id ASC");
while ($row = mysql_fetch_array($mysql)) {
$id2 = $row[id];

$indhold = $row['indhold'];
$indhold = preg_replace("#\.\s*(\w)#e", "strtoupper('. \\1')", $indhold
);

echo "<hr><b>Kommentar:</b><br>".$row['indhold'];
echo "<br><b>Forfatter:</b>".$row[brugernavn];
echo "<br><b>Dato:</b>".$row['dato']; ?>

virker ikke,
Avatar billede kulip Nybegynder
10. september 2006 - 17:00 #17
det andet virker fint men ikke det der.
Avatar billede nielle Nybegynder
10. september 2006 - 17:01 #18
Skal de tre sidste linje ikke indenfor i din while-løkke?

Og så skal denne:

echo "<hr><b>Kommentar:</b><br>".$row['indhold'];

- rettes til:

echo "<hr><b>Kommentar:</b><br>".$indhold;

- for ellers bruger den jo ikke den version af $indhold som har været igennem preg_replace()'en.
Avatar billede nielle Nybegynder
10. september 2006 - 17:01 #19
Ahh, glem det om "while-løkken".
Avatar billede kulip Nybegynder
10. september 2006 - 17:03 #20
når ja :D , tak nu virker det. men lige en sidste ting, kan du hjælpe mig med sådan at den laver stort som det første bogstave i nyheden eller kommentaren?
Avatar billede nielle Nybegynder
10. september 2006 - 17:06 #21
Du skal bruge funktionen ucfirst() til det:

http://dk.php.net/manual/da/function.ucfirst.php
Avatar billede coderdk Praktikant
10. september 2006 - 20:58 #22
Her er et andet eksempel:

    $text = "hej med dig. det er da fedt. ja det er så.";
    $text = ucfirst( preg_replace( '/([^ ][^\.]+\.)/ie', "ucfirst('\\1')", $text ) );
    echo $text;

:)
Avatar billede coderdk Praktikant
10. september 2006 - 21:14 #23
Hmm ved nærmere eftertanke vil den måske fejle i nogle tilfælde, måske denne er bedre:

    $text = ucfirst( preg_replace( '/(\s*)(.+?\.)/ise', "'\\1'.ucfirst('\\2')", $text ) );
Avatar billede nielle Nybegynder
20. september 2006 - 21:43 #24
Lukketid?
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