PHP-Code:
/**
* Create a new comment to the database
* @param string -> source table
*/
public function createComment($strSource)
{
$tstamp = time();
$date = time();
$source = $strSource;
// $username = $this->replaceInsertTags('{{user::username}}'); // wik
$username = $this->Input->post('NEW_NAME'); // wik: neu!
if(!strlen($username)) $username = $this->strUnknownUser;
$website = $this->Input->post('NEW_WEBSITE'); // wik: neu!
$parent = str_replace('com_form_newscomment', '', $this->Input->post('FORM_SUBMIT'));
$comment = $this->Input->post('NEW_COMMENT');
// insert new comment
/*$this->Database->prepare("INSERT INTO tl_comments (tstamp, source, parent, name, comment, published, date, ip) VALUES (?, ?, ?, ?, ?, ?, ?, ?) ")
->execute($tstamp, $source, $parent, $username, $comment, 1, $date, $this->Environment->ip); // wik */
$this->Database->prepare("INSERT INTO tl_comments (tstamp, source, parent, name, comment, website, published, date, ip) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) ")
->execute($tstamp, $source, $parent, $username, $comment, $website, 1, $date, $this->Environment->ip); // wik: neu!
//--
// get id of current post
$objField = $this->Database->prepare("SELECT id FROM tl_comments WHERE tstamp=? AND source=? AND parent=? AND name=?")
->limit(1)
->execute($tstamp, $source, $parent, $username);
if(!$objField->numRows) return '';
// write information to session
$arrData = array(
'tstamp' => $tstamp,
'id' => $objField->id,
'source' => 'tl_news',
'pid' => $parent,
'user' => $username,
'comment' => $comment,
'website' => $website, // wik: neu!
'ip' => $this->Environment->ip,
'raw' => array('tstamp'=>$tstamp),
);
$this->setSessionData($arrData);
}
Zuvor habe ich im Formular noch die Felder NEW_WEBSITE und NEW_NAME eingefügt. Bei Tests des Formulars sind bisher keine Fehler aufgetreten. Trotzdem meine Frage, muss ich noch an anderer Stelle etwas ändern?