Moin moin,
Eins vorne weg:
Ich beschäftige mich erst seit ca. zwei Monaten mit PHP - meine Kenntnisse sind also noch alles andere als umfassend
Nachdem ich mich durch ein gutes und langes Tutorial von php-quake.net gearbeitet habe, versuche ich zur Zeit mein Glück mit diesem hier: Klick
Es funktionier auch soweit alles gut, auch in von mir abgeänderter Form usw. usf., allerdings passiert, wenn man den submit button im Bereich "Add Comment" betätigt, rein gar nichts. Ich kann mir nicht erklären warum.
Ich wäre sehr dankbar, wenn mir jemand helfen kann. Müsste ja für jemand mit Ahnung ein Klacks sein
Viele Grüße, Olduwai.
Hier einmal der ganze Code, ist nicht sehr lang:
Eins vorne weg:
Ich beschäftige mich erst seit ca. zwei Monaten mit PHP - meine Kenntnisse sind also noch alles andere als umfassend
Nachdem ich mich durch ein gutes und langes Tutorial von php-quake.net gearbeitet habe, versuche ich zur Zeit mein Glück mit diesem hier: Klick
Es funktionier auch soweit alles gut, auch in von mir abgeänderter Form usw. usf., allerdings passiert, wenn man den submit button im Bereich "Add Comment" betätigt, rein gar nichts. Ich kann mir nicht erklären warum.
Ich wäre sehr dankbar, wenn mir jemand helfen kann. Müsste ja für jemand mit Ahnung ein Klacks sein
Viele Grüße, Olduwai.
Hier einmal der ganze Code, ist nicht sehr lang:
PHP-Code:
<?php
/* user config variables */
$max_items = 5; /* max number of news items to show */
/* make database connection */
$db = mysql_connect ('server','name','passwort');
mysql_select_db ('db',$db);
function displayNews($all = 0) {
/* bring in two variables
* $db is our database connection
* $max_items is the maximum number
* of news items we want to display */
global $db, $max_items;
/* query for news items */
if ($all == 0) {
/* this query is for up to $max_items */
$query = "SELECT id,title,newstext," .
"DATE_FORMAT(postdate, '%Y-%m-%d') as date " .
"FROM news ORDER BY postdate DESC LIMIT $max_items";
} else {
/* this query will get all news */
$query = "SELECT id,title,newstext," .
"DATE_FORMAT(postdate, '%Y-%m-%d') as date " .
"FROM news ORDER BY postdate DESC";
}
$result = mysql_query ($query);
while ($row = mysql_fetch_assoc ($result)) {
/* display news in a simple table */
echo "<TABLE border=\"1\" width=\"300\">\n";
/* place table row data in
* easier to use variables.
* Here we also make sure no
* HTML tags, other than the
* ones we want are displayed */
$date = $row['date'];
$title = htmlentities ($row['title']);
$news = nl2br (strip_tags ($row['newstext'], '<a><b><i><u>'));
/* display the data */
echo "<TR><TD><b>$title</b> posted on $date</TD></TR>\n";
echo "<TR><TD>$news</TD></TR>\n";
/* get number of comments */
$comment_query = "SELECT count(*) FROM news_comments " .
"WHERE news_id={$row['id']}";
$comment_result = mysql_query ($comment_query);
$comment_row = mysql_fetch_row($comment_result);
/* display number of comments with link */
echo "<TR><TD><a href=\"{$_SERVER['PHP_SELF']}" .
"?action=show&id={$row['id']}\">Comments</a>" .
"($comment_row[0]}</TD></TR>\n";
/* finish up table*/
echo "</TABLE>\n";
echo "<BR>\n";
}
/* if we aren't displaying all news,
* then give a link to do so */
if ($all == 0) {
echo "<a href=\"{$_SERVER['PHP_SELF']}" .
"?action=all\">View all news</a>\n";
}
}
function displayOneItem($id) {
global $db;
/* query for item */
$query = "SELECT * FROM news WHERE id=$id";
$result = mysql_query ($query);
/* if we get no results back, error out */
if (mysql_num_rows ($result) == 0) {
echo "Bad news id\n";
return;
}
$row = mysql_fetch_assoc($result);
echo "<TABLE border=\"1\" width=\"300\">\n";
/* easier to read variables and
* striping out tags */
$title = htmlentities ($row['title']);
$news = nl2br (strip_tags ($row['newstext'], '<a><b><i><u>'));
/* display the items */
echo "<TR><TD><b>$title</b></TD></TR>\n";
echo "<TR><TD>$news</TD></TR>\n";
echo "</TABLE>\n";
echo "<BR>\n";
/* now show the comments */
displayComments($id);
}
function displayComments($id) {
/* bring db connection variable into scope */
global $db;
/* query for comments */
$query = "SELECT * FROM news_comments WHERE news_id=$id";
$result = mysql_query ($query);
echo "Comments:<BR><HR width=\"300\">\n";
/* display the all the comments */
while ($row = mysql_fetch_assoc ($result)) {
echo "<TABLE border=\"1\" width=\"300\">\n";
$name = htmlentities ($row['name']);
echo "<TR><TD><b>by: $name</b></TD></TR>\n";
$comment = strip_tags ($row['comment'], '<a><b><i><u>');
$comment = nl2br ($comment);
echo "<TR><TD>$comment</TD></TR>\n";
echo "</TABLE>\n";
echo "<BR>\n";
}
/* add a form where users can enter new comments */
echo "<HR width=\"300\">";
echo "<FORM action=\"{$_SERVER['PHP_SELF']}" .
"?action=addcomment&id=$id\" method=POST>\n";
echo "Name: <input type=\"text\" " .
"width=\"30\" name=\"name\"><BR>\n";
echo "<TEXTAREA cols=\"40\" rows=\"5\" " .
"name=\"comment\"></TEXTAREA><BR>\n";
echo "<input type=\"submit\" name=\"submit\" " .
"value=\"Add Comment\"\n";
echo "</FORM>\n";
}
function addComment($id) {
global $db;
/* insert the comment */
$query = "INSERT INTO news_comments " .
"VALUES('',$id,'{$_POST['name']}'," .
"'{$_POST['comment']}')";
mysql_query($query);
echo "Comment entered. Thanks!<BR>\n";
echo "<a href=\"{$_SERVER['PHP_SELF']}" .
"?action=show&id=$id\">Back</a>\n";
}
/* this is where the script decides what do do */
echo "<CENTER>\n";
switch($_GET['action']) {
case 'show':
displayOneItem($_GET['id']);
break;
case 'all':
displayNews(1);
break;
case 'addcomment':
addComment($_GET['id']);
break;
default:
displayNews();
}
echo "</CENTER>\n";
?>
Kommentar