Comentarii pe blog(PHP)-tutorial
Scris de unepetitemonde pe iulie 21, 2008
Comentarii pe blog(PHP)-TuTorial
<?php
class MyComm {
var $titlu_pagina;function IntrodComm($nume,$email,$website,$continut,$titlu_pagina) { //functia IntrodComm introduce comentariile in baza de date;
if(strlen($nume)>4 AND ereg(‘^([a-zA-Z0-9]{1,50})@([a-zA-Z]{1,30}).([a-zA-Z]{1,5})$’,$email,$regs) AND strlen($continut)>=2 ) {
echo “bau”;
$nume_validat=htmlentities($nume);
$continut_validat=htmlentities($continut);
$sql=”INSERT INTO commenturi(nume,email,website,comment,titlu_pag) VALUES(‘$nume_validat’,'$email’,'$website’,'$continut_validat’,'$titlu_pagina’)”;
$cerere=mysql_query($sql) or die(‘nu mere’);
}
}
function ArataComm ($titlu_pagina) {
$sql=”SELECT nume,email,website,comment FROM commenturi WHERE titlu_pag=’$titlu_pagina’”;
$scoate=mysql_query($sql);
while($rand=mysql_fetch_assoc($scoate)) {
echo “<a href=’$rand[website]‘>$rand[nume]</a><br> $rand[nume] a zis:<br>$rand[comment]<br> “;
}
}
}
Clasa de mai sus functioneaza in felul urmator:
Avem 2 functii:
-IntrodComm()- care primeste ca argumente $nume, $email, $website, $continut, $titlu_pagina; functia introduce comentariul in baza de date doar daca numele are mai mult de 4 litere, emailul este de forma nume @ domeniu.tld , iar continutul are cel putin 2 litere(pentru comentariile de tipul ok,ms).
-ArataComm()-primeste ca argument $titlu_pagina; in functie de titlul paginii comentariile vor fi afisate;
In fisierul index.php vom folosi:
<?php
require_once(“config.php”);
include(“clsMyComm.php”);
$validare=new MyComm;
$show_comm=new MyComm;
if(!isset($_GET['actiune'])) $_GET['actiune']=”;
echo “
Nume:
Website
Continut:“;
if ($_GET['actiune']==’validare’) {
$validare->IntrodComm($_POST['nume'],$_POST['email'],$_POST['website'],$_POST['body'],$titlu);
}
else {
$show_comm->ArataComm($titlu);
}
?>
includem clasa si fisierul config.php ce contine datele de conectare in baza de date.creem 2 obiecte si le atribuim unor variabile(in cazul nostru:validare si show_comm). verificam daca a fost setata $_GET[actiune] si in caz contrar o setam noi . apoi facem un form cu 4 campuri: nume, email, website si continut. verificam daca $_GET[actiune] are valoarea ‘validare’(va avea valoarea validare in cazul in care s-a apasat pe butonul Trimite() si vom apela functia IntrodComm() cu tot cu cele 5 argumente($_POST['nume'], $_POST['email'], $_POST['website'], $_POST['body'], $titlu).in caz contrar, se vor afisa comentariile postului curent.
Dupa cum ati observat, in fisierul index.php nu exista $titlu, deoarece va las pe dumneavoastra sa scoateti titlu paginii in functie de cum doriti (eu va recomand sa aflati titlu este printr-o interogare in baza de date si folosirea lui ca $rand[titlu]).
Cam atat, pentru comentarii si sugestii va astept !
snacks spus
Scuze, sunt incepator in acest domeniu, unde trebuie sa pun aceste coduri??:-??
unepetitemonde spus
In primul rand, iti multumesc ca mi-ai lasat acest comentariu.
In al doilea rand, daca esti inca incepator si vrei sa ai blog, iti recomand sa citesti tutorialul de pe aceasta pagina si sa iti instalezi wordpress-ul. Apoi, trebuie sa inveti html + php. Intr-o saptamana ar trebui sa ai habar (cat e nevoie) de html.
Dupa aceea mai discutam.
Bafta !