Salve a tutti!
Spero che qualcuno può aiutarmi..
Io non sono esperto in php, però mi servirebbe modificare un file di un mio cms.
In pratica dovrei far si, che quando un utente inserisce un commento, controlli se l'indirizzo email è convalidato, cosa che al momento succede solo se si vuole inserire una domanda.
Di seguito vi riporto il codice per l'inserimento della domanda e il codice per l'inserimento del commento..
Sono sicuro di sapere quale parte del codice controlla questa cosa, ma non so inserirla nell'altra parte..
Codice per l'inserimento della domanda:
codice:
<?php include("include/config.php"); include("include/functions/import.php"); $thebaseurl = $config['baseurl']; $USERID = intval($_SESSION['USERID']); if ($USERID > 0) { $sess_ver = intval($_SESSION[VERIFIED]); $verify_asker = intval($config['verify_asker']); if($verify_asker == "1" && $sess_ver == "0") { $error = $lang['225']; $theme = "error.tpl"; } else { $theme = "ask.tpl"; STemplate::assign('qtitle',htmlentities(strip_tags($_REQUEST['qtitle']), ENT_COMPAT, "UTF-8")); STemplate::assign('question',htmlentities(strip_tags($_REQUEST['question']), ENT_COMPAT, "UTF-8")); if($_REQUEST['subform'] != "") { $qtitle = htmlentities(strip_tags($_REQUEST['qtitle']), ENT_COMPAT, "UTF-8"); $question = htmlentities(strip_tags($_REQUEST['question']), ENT_COMPAT, "UTF-8"); $category = intval($_REQUEST['category']); if($qtitle == "") { $error = $lang['3']; } elseif($category <= "0") { $error = $lang['4']; } else { if($config['approve_stories'] == "1") { $addtosql = ", active='0'"; } $query="INSERT INTO posts SET USERID='".mysql_real_escape_string($USERID)."', title='".mysql_real_escape_string($qtitle)."',question='".mysql_real_escape_string($question)."', tags='".mysql_real_escape_string($qtitle)."', category='".mysql_real_escape_string($category)."', time_added='".time()."', date_added='".date("Y-m-d")."' $addtosql"; $result=$conn->execute($query); $userid = mysql_insert_id(); $message = $lang['5']; } } } } else { $question = htmlentities(strip_tags($_REQUEST['qtitle']), ENT_COMPAT, "UTF-8"); $redirect = base64_encode($thebaseurl."/ask?qtitle=".$question); header("Location:$config[baseurl]/login?redirect=$redirect");exit; } //TEMPLATES BEGIN STemplate::assign('pagetitle',$lang['6']); STemplate::assign('error',$error); STemplate::assign('message',$message); STemplate::display('header.tpl'); STemplate::display($theme); STemplate::display('footer.tpl'); //TEMPLATES END ?>
Codice per l'inserimento del commento:
codice:
<?php include("include/config.php"); include("include/functions/import.php"); $USERID = intval($_SESSION['USERID']); $PID = intval($_REQUEST['pid']); $ansdetails = htmlentities(strip_tags($_REQUEST['ansdetails']), ENT_COMPAT, "UTF-8"); if($USERID > 0) { if($_SESSION[USERNAME] === "") return; if($PID > 0) { $query="INSERT INTO posts_comments SET details='".mysql_real_escape_string($ansdetails)."', USERID='".mysql_real_escape_string($USERID)."', PID='".mysql_real_escape_string($PID)."', time_added='".time()."'"; $result=$conn->execute($query); $query="UPDATE posts SET commentcount=commentcount+1 WHERE PID='".mysql_real_escape_string($PID)."'"; $result=$conn->execute($query); echo "".$lang['77'].""; $points = $config['points_ans']; $query="UPDATE members SET points=points+$points WHERE USERID='".mysql_real_escape_string($USERID)."'"; $result=$conn->execute($query); $query = "SELECT A.username, A.email, A.notify, B.category, B.title FROM members A, posts B WHERE B.PID='".mysql_real_escape_string($PID)."' AND A.USERID=B.USERID"; $executequery = $conn->execute($query); $p = $executequery->getarray(); $owner_email = $p['0']['email']; $notify = $p['0']['notify']; $owner_name = $p['0']['username']; $category = $p['0']['category']; $title = $p['0']['title']; if($notify == "1") { $sendto = $owner_email; $sendername = $config['site_name']; $from = $config['site_email']; $cname = get_cat($category); $title = seo_clean_titles2($title); $link = $config['baseurl']."/".stripslashes($cname)."/".stripslashes($title)."_".$PID; $subject = $_SESSION['USERNAME']." ".$lang['205']; $sendmailbody = $lang['206']."
".$lang['207'].":
<a target=\"_blank\" href=\"$link\">$link</a>
".$lang['208'].",
".$sendername; mailme($sendto,$sendername,$from,$subject,$sendmailbody,$bcc=""); } } else { echo "".$lang['78'].""; } } else { echo "".$lang['79'].""; } ?>
Credo che il codice che verifica se l'utente ha la mail convalidata è questo:
codice:
if ($USERID > 0) { $sess_ver = intval($_SESSION[VERIFIED]); $verify_asker = intval($config['verify_asker']); if($verify_asker == "1" && $sess_ver == "0") { $error = $lang['225']; $theme = "error.tpl"; } else {
Qualcuno può dirmi come faccio a modificare quel codice ?
Spero in una vostra risposta..
Grazie in anticipo!