www.webdeveloper.com
Results 1 to 4 of 4

Thread: Miniature Blog display problem

Hybrid View

  1. #1
    Join Date
    Feb 2010
    Location
    Northern Massachusetts Swampland
    Posts
    7

    Question Miniature Blog display problem

    Hi, I'm trying to make a blog for a website that I'm making for a group I'm in. It has three pages:

    PHP Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Website</title>
          <link rel="stylesheet" type="text/css" href="/css/BodyStyles.css" />
            <style>
            BLOG{
                display: block;
            }
                ENTRY{
                    display: block;
                }
                LINE{
                    display: block;
                }
                ARTICLETITLE{
                    margin-left: 0.25in;
                    color: #666600;
                    font-family: Comic Sans MS;
                    font-weight: bolder;
                    font-size: 175%;
                }
                ARTICLETITLE:first-letter{
                    font-size: 180%;
                    color: #993300;
                }
                AUTHOR{
                    font-size: 75%;
                    color: #FF9900;
                    font-family: Comic Sans MS;
                    font-weight: bolder;
                }
                TIME{
                    color: #FF0000;
                    margin-left: 0.55in;
                    font-family: Comic Sans MS;
                    font-size: 75%;
                    font-weight: bolder;
                    display: block;
                }
                ABODY{
                    color: #003399;
                    display: block;
                    font-family: Comic Sans MS;
                    margin-left: 0.75in;
                    margin-right: 4in;
                }
            </style>
        </head> 
        <body>       
            <a href="makeBlogEntry/form.php"><img alt="Create Article" src="/buttons/cooltext463939100.png" onmouseover="this.src='/buttons/cooltext463939100MouseOver.png';" onmouseout="this.src='/buttons/cooltext463939100.png';" /></a>
            <hr />
          <BLOG>
            <?php
            $con 
    mysql_connect("localhost","username","password"); if (!$con){die('Could not connect: ' mysql_error());}
            
    mysql_select_db("blog entries"$con);
            
    $sql "SELECT * FROM blogs ORDER BY dateOfCreation DESC";
            
    $request mysql_query($sql);
            while(
    $row mysql_fetch_array($request)){
                echo
    "<ENTRY><LINE>";
                echo
    "<ARTICLETITLE>".$row['articleTitle']."</ARTICLETITLE>";
                echo
    "<AUTHOR>".$row['authorName']."</AUTHOR></LINE>";
                echo
    "<TIME>".$row['dateOfCreation']."</TIME>";
                echo
    "<ABODY>";
                echo 
    $row['articleBody'];
                echo
    "</ABODY>";
                echo
    "</ENTRY>";
            }
            
    mysql_close($con);
          
    ?>
          </BLOG>
        </body>
    </html>
    And here is the new entry page pages:
    PHP Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd"
    >

    <
    html>
        <
    head>
            <
    meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <
    title>Website</title>
          <
    link rel="stylesheet" type="text/css" href="/css/BodyStyles.css" />
        </
    head>

        <
    body>
            <
    center>
            <
    h2>New Blog Entry</h2><br /><br />
            <
    form action="submitEntry.php" method="post" >
                <
    p>Title:<input type="text" name="articleTitle" size="20" /></p>
                <
    p>Author:<input type="text" name="author" size="20" /></p>
                <
    p>&darrBody &darr;<br /><textarea name="body" rows="16" cols="34"></textarea></p>
                <
    input type="submit" />
            </
    form>
            </
    center>
        </
    body>

    </
    html
    And the processing page:
    PHP Code:
    <html>
        <head>
            <title>Website</title>
            <link rel="stylesheet" type="text/css" href="/css/BodyStyles.css" />
        </head>
        <body>
        <?php
            $title 
    $_POST['articleTitle'];
            
    $aName $_POST['author'];
            
    $body $_POST['body'];

            
    $con mysql_connect("localhost","username","password");
            if (!
    $con){die('Could not connect: ' mysql_error());}
            
    $sql "INSERT INTO `blog entries`.`blogs` (`articleTitle`, `authorName`, `articleBody`) 
                VALUES ('
    $title', '$aName', '$body');";
            if (!
    mysql_query($sql,$con)){die('Error: ' mysql_error());}
            
    mysql_close($con)
        
    ?>
        <br /><br /><br />
        <center><p>Thank-you!</p></center>
        </body>
    </html>
    It works, although when you view an entry that is longer than the width of the page, it simply extends it rather than jumping to a new line. I am new to PHP and was wondering if there was a function or something I could use, or if this could could be fixed within the CSS. Please help, and thanks in advance.

  2. #2
    Join Date
    Jul 2010
    Location
    Sofia, Bulgaria
    Posts
    49
    Is the problematic text, by any chance, stored in the DB with "&nbsp;" instead of regular space characters? Because that's the only way I've been able to reproduce your problem - by using spacebar the text wraps just fine by default (as it should).

    If that's the case, you can replace all '&nbsp'-s:
    Code:
    ...
    echo"<ABODY>";
    echo str_replace('&nbsp;', ' ', $row['articleBody']);
    echo"</ABODY>";
    ...

  3. #3
    Join Date
    Feb 2010
    Location
    Northern Massachusetts Swampland
    Posts
    7
    Thanks, althought I tried that and it didn't really make a difference. I'm using MySQL, should I add a property? Thanks

  4. #4
    Join Date
    Feb 2010
    Location
    Northern Massachusetts Swampland
    Posts
    7
    Nevermind, I got it to work. I replaced this line in the display page:

    echo $row['articleBody'];

    -with-

    echo wordwrap($row['articleBody'],60,"<br />\n");

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles