Jump to content

Archived

This topic is now archived and is closed to further replies.

dylanburford

TXT News Script Help

Recommended Posts

I am writing a simple news script for my site that writes a news HTML paragraph to a .txt file. But when i compile it (open it in a web browser) this is what i get:


Parse error: parse error, unexpected T_VARIABLE in C:\xampp\htdocs\Qwakhouse\Layout\admin\makenews.php on line 69

The Script:
[code]
<?php
/* For Username and Password */
$username = $_POST['username'];
$password = $_POST['passord'];

/* for posts */
$title = $_POST['title'];
$post = $_POST['post'];
$mainpost = $_POST['mainpost'];


/* Other */
$num = '1';

if(empty( $username ) || empty($post)) {
echo 'Username & Password are empty';
} else if(empty( $username )) {
echo 'Username is empty';
} else if(empty( $password )) {
echo 'Password is empty';
} else if( $username =='Josh' || $password =='tiki' ) {
domakenews();
} else if( $username =='Allen' || $password =='jedi' ) {
domakenews();
} else if( $username =='Dylan' || $password =='6483a66' ) {
domakenews();
} else {
echo 'Username or Password is empty';
}

if( $username =='Josh' ) {
$email =='blood_hoobit@hotmail.com';
} else if( $username =='Allen' ) {
$email =='coheed_and_cambria_awmjr@hotmail.com';
} else if( $username =='Dylan' ) {
$email =='dead_dylan665@hotmail.com';
}

if(empty( $post) || empty($mainpost) || empty($title) ) {
echo 'All Fields Are Empty';
} else if(empty( $post )) {
echo 'Intro News is Empty';
} else if(empty( $title )) {
echo 'Title is Empty';
}

function domakenews() {

if(empty( $mainpost )) {
dointronews();
} else {
dofullnews();
}

}

function dointronews() {
$file = fopen('news.txt', 'a');
fwrite($file, "
<p><h3>$title</h3></p>
<h5>Posted By: $username</h5>
<p>$post</p>
<hr />
" );
}

function dofullnews() {
$file = fopen('news.txt', 'a');
fwrite($file, "
$num = $num+1
<p><h3>$title</h3></p>
<h5>Posted By: $username</h5>
<p>$post | Read More...</p>
<?php
if( $pid =='102564456985214563256325632$num' ) {
?>
<p><h3>$title</h3></p>
<h5>Posted By: $username</h5>
<p>$post $mainpost</p>
<hr />
");
}
?>
[/code]

Share this post


Link to post
Share on other sites
It looks like you forgot to add the '<?php' tag at the begining of your script.

Share this post


Link to post
Share on other sites
yeh but when i do that i get this error Parse error: parse error, unexpected T_VARIABLE in C:\xampp\htdocs\Qwakhouse\Layout\admin\makenews.php on line 69

Share this post


Link to post
Share on other sites
your script/logic is a little quirky - are you trying to actually WRITE that PHP markup into the text file?

Share this post


Link to post
Share on other sites
[code]if( $pid =='102564456985214563256325632$num' ) {[/code]

Hmm.. You didn't close right ?

Share this post


Link to post
Share on other sites
Either change your fwrite lines to be a single line rather than multiple:
[code]
fwrite($file, "
<p><h3>$title</h3></p>
<h5>Posted By: $username</h5>
<p>$post</p>
<hr />
" );[/code]
Should be:
[code]fwrite($file, "<p><h3>$title</h3></p><h5>Posted By: $username</h5><p>$post</p><hr />" );[/code]

or assign the multiple lines to a variable then write that to your file.

You should be using fclose to close your files after you write to them.

In the second fwrite, the one that's a part of your dofullnews function, if you are intending to write the php code there and not the variables...i.e. have the text of your file be:

[quote]$num = $num+1
<p><h3>$title</h3></p>
<h5>Posted By: $username</h5>
<p>$post | Read More...</p>
<?php
if( $pid =='102564456985214563256325632$num' ) {
?>
<p><h3>$title</h3></p>
<h5>Posted By: $username</h5>
<p>$post $mainpost</p>
<hr />[/quote]

Rather than substituting the values of variables for the variable names, then you need to use a single quote rather than double.

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.