| |
|
03-21-2010, 08:23 PM
|
|
flipper
Designer experimentat
      
|
Posts: 572
Joined: Nov 2009
Reputation: 11
|
|
unde gresesc?
Va salut.
Iar va deranjez cu intrebarile mele.. In urma cererii de ajutor din partea voastra, am primit un cod php pentru formularul de comanda cu captcha pentru site-ul acela in care eu ofer bannere gratuite. Iata codul integrat in pagina.
cere.php
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<title>Banner gratuit. Banner online. Free banner online.</title>
<meta name="description" content="Bannere gratuite in format 125x125pixeli gratuit. Completeaza cererea si verifica peste 2 zile. GRATUIT. Bannere gratuite.">
<meta name="keywords" content="Banner 125px gratuit, free banner online, banner gratis, banner gratuit, banner 125x125, banner 125px, 125px banner">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link type="text/css" rel="stylesheet" href="img/banner.css">
</head>
<body>
<div id="container">
<div id="meniu"></div>
<div id="header">
<a class="meniu" href="index.php"><img src="img/logo.png" alt="" style="margin-left: 20px;" border="0"></a>
<div id="meniul">
<?php include('ext/meniu.php') ?>
</div>
</div>
<div style="height: 100%;" id="navigare" class="columnas">
<div id="testimoniale">
<p>
<?php include('ext/statistici.php') ?>
</p>
<div id="last_banner" style="margin-bottom: 20px;">
<div id="ultimul_banner" class="ultimul_banner banner125">
<?php include('ext/last_banner.php') ?>
</div>
</div>
<p style="clear: left; padding-top: 10px; padding-bottom: 15px;" align="right">
<a href="portofoliu.php" class="buton_negru">VEZI INTREGUL PORTOFOLIU</a>
</p>
<h6>ULTIMELE STIRI</h6>
<div id="ultimele_stiri">
<!-- INCEPUT AFISARE STIRE-->
<?php include('ext/last_news.php') ?>
<!-- SFARSIT AFISARE STIRE-->
</div>
</div>
<div id="testimoniale">
<!-- TESTIMONIALE-->
<?php include('ext/last_testim.php') ?>
<!-- SFARSIT TESTIMONIALE-->
<h6>CAUTARI TOP IN GOOGLE</h6>
<ul class="cautari_in_google">
<li>Banner gratuit</li>
<li>Banner online</li>
<li>Free online banner</li>
<li>Banner 125px</li>
<li>Banner 125</li>
<li>Free banner online</li>
</ul>
<h6 style="margin-top: 35px;">BLOGROLL</h6>
<?php include('ext/blogroll.php') ?>
</div>
</div>
<div style="height: 100%;" id="content" class="columnas">
<div id="pagina">
<center><a href="#"><img src="aici este reclama" border="0"></a></center>
Iata si codul php pe care l-am integrat in site. Partea proasta este ca nu merge partea aia cu verificarea formularului, daca s-au completat campurile. Ce am gresit? Ma puteti ajuta, va rog? Inainte imi mergea perfect, acum nu stiu ce are. Stiu ca am modificat eu ceva pe acolo, dar nu mai stiu ce. Si nici scriptul original nu il mai am.
PHP Code:
<?php session_start(); //verificam daca formularul este completat corect if( isset($_POST['submit'])) { $eroare=array(); //verificam daca este introdus codul corect if( $_SESSION['security_code'] != $_POST['security_code']){ $eroare[]='Codul anti-spam nu corespunde';} //se verifica daca este introdus numele if(empty($_POST['nume'] )){ $eroare[]='Trebuie sa completati numele';} //se verifica daca este introdusa adresa de email if(empty($_POST['email'] )){ $eroare[]='Trebuie sa completati adresa de email';} //se verifica daca a fost introdus ceva in campul adresa web if(empty($_POST['adresa'] )){ $eroare[]='Trebuie sa completati adresa site-ului';} //se verifica daca adresa de email introdusa are un format acceptat if( !eregi ('^[[:alnum:]][a-z0-9_\.\-]*@[a-z0-9\.\-]+\.[a-z]{2,4}$', $_POST['email'])){ $eroare[]='Adresa de email nu este valida';} //se verifica daca adresa web introdusa are un format acceptat if(!preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $_POST['adresa'])){ $eroare[]='Adresa site-ului nu este valida';} //daca este (nu sunt erori) se trimite comanda $adresa=$_POST[adresa]; $mesaj=$_POST[mesaj]; $mesajul=str_replace("\n","\r",$mesaj); $comanda="Site-ul pentru care se doreste banner-ul este: $adresa \n\r $mesajul"; if (empty($eroare)){ //aici vei introduce adresa de email la care vrei sa primesti mail ('florin_flipper@yahoo.com','Comanda banner125',$comanda,'From:'.$_POST[nume].'-'.$_POST['email'].''); echo 'Multumim.Comanda a fost trimisa '; unset($_SESSION['security_code']); } else { //daca formularul nu este completat corect se afiseaza erorile foreach($eroare as $mesaj){ echo "* $mesaj<br />"; } echo "Click <a href=cere.php'>aici</a> pentru a incerca din nou "; }
} else{ //daca totul este OK se afiseaza formularul ?> <form class="cmxform" action="cere.php" method="post"> <fieldset> <div id="infocomments"> <p> Poti beneficia in mod <strong>GRATUIT</strong> de serviciul de banner creation. Asigura-te inainte de a completa formularul ca ai citit si esti de acord cu termenii si conditiile <strong>banner125px</strong>.<br> Pentru a sarbatori noua formula, primele 10 cereri aprobate ale caror bannere au fost realizate le vor castiga un link in sectiunea "site-uri partenere" (footer).<br> Promotia nu este valabila pentru bannerele deja realizate.<br> </p> </div> <p>Casutele cu * sunt obligatorii</p> <p style="background: none repeat scroll 0% 0% transparent;"> <label>Nume*:</label> <input name="nume" id="author" tabindex="1" size="61" maxlength="100" type="text"> </p> <p> <label>Email*:</label> <input name="email" tabindex="2" size="61" maxlength="100" type="text"> </p> <p><label>Adresa site-ului*:<br>(domeniu.ro)</label> <input name="adresa" tabindex="3" size="61" maxlength="100" type="text"> </p> <p><label> </label> <img src="CaptchaSecurityImages.php?width=100&height=40&characters=5" style="border: 1px solid rgb(204, 204, 204); display: inline;"> </p> <p><label> Cod de siguranta*:</label> <input name="security_code" size="7" tabindex="4" maxlength="10" type="text"> </p><p><label>Comentariu:<br>(nu este obligatoriu)</label> <textarea tabindex="5" name="mesaj" cols="59" rows="5"></textarea> </p> <p align="center"> <input name="acc" value="Comentar" type="hidden"> <input name="in002Id" value="9010" type="hidden"> <input name="xxxy" value="" type="hidden"> <input name="Submit" value="" class="Enviar" type="submit"> </p> </fieldset> </form> <?php } ?>
Code:
<p><span class="recomandam">Recomandam:</span></p>
<?php include('ext/recomandam.php') ?>
</div>
</div>
</div>
<div id="footer">
<table align="center" border="0" cellpadding="0" cellspacing="5" width="940">
<tbody><tr>
<td valign="top" width="33%">
<h6>Impelo Romania</h6>
<ul>
<?php include('ext/footer_impelo.php') ?>
</ul>
</td>
<td valign="top" width="33%">
<h6>Site-uri partenere</h6>
<ul>
<?php include('ext/footer_parteneri.php') ?>
</ul>
</td>
<td valign="top" width="33%">
<h6>Date de contact</h6>
<ul>
<li><a href="">Telefon: 0724.120.157</a></li>
<li><a href="mailto:eu@florinmatei.com">E-mail: eu@florinmatei.com</a></li>
<li><a href="">Skype: florin_flipper</a></li>
<li><a href="ymsgr:sendim?florin_flipper">!YM: florin_flipper</a></li>
<li><a href="harta.php">Harta site</a></li>
<li><a href="parteneriat.php">Parteneriat</a></li>
</ul>
</td>
</tr>
<tr>
<td colspan="3" valign="top">
<a href="tutorial.php"><img src="img/tutorial.png" style="padding-right: 5px; border-right: 1px solid rgb(85, 85, 85); margin-right: 10px;" border="0"></a>
<a href="stiri.php"><img src="img/stiri.png" style="padding-right: 5px; border-right: 1px solid rgb(85, 85, 85); margin-right: 10px;" border="0"></a>
<a href=""><img src="img/banner.png" style="padding-right: 5px; border-right: 1px solid rgb(85, 85, 85); margin-right: 10px;" border="0"></a>
<a href="contact.php"><img src="img/contact.png" style="padding-right: 5px; border-right: 1px solid rgb(85, 85, 85); margin-right: 10px;" border="0"></a>
</td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
Va multumesc anticipat.
Acelasi pentru toti, diferit pentru fiecare | Banner 125px GRATUIT
|
|
|
03-21-2010, 11:46 PM
(This post was last modified: 03-21-2010 11:50 PM by AccesInterzis.)
|
|
|
RE: unde gresesc?
Code:
//verificam daca formularul este completat corect
if( isset($_POST['submit'])) {
Codul de mai sus nu verifica daca toate campurile au fost trimise. Mai rau e ca nu specifica ca inputul cu captcha este obligatoriu. Te pot spama foarte usor cu un cURL chiar daca ai captcha in formular. Eu as face codul asa:
Code:
$required_fields = array('news_title', 'news_body', 'publish');//aici sunt campurile formularului tau INCLUSIV campul cu captcha
$sent_fields = array_keys($_POST);
if ($required_fields == $sent_fields) {
//procesez datele
}
Plus ca as mai verifica si de unde vine cererea de procesare a datelor.
Iar $_POST-urile alea trebuiesc si ele infasurate in trim(), stripslashes(), htmlentities(), nl2br() etc.. Nu lua de bun ceea ce introduce utilizatorul. INTOTDEAUNA pleaca de la premisa ca ceea ce utilizatorul introduce NU e de incredere.
Intra pe blogul meu ca am facut niste formulare si am prezentat cum se valideaza un formular si cum se proceseaza. Poate te ajuta. Daca tot nu ii dai de cap poate iti fac eu formularul de comanda si iti si voi explica fiecare linie de cod ce face. Inclusiv partea cu CAPTCHA.
How do I grab email addresses of a web page?
|
|
|
|
03-22-2010, 08:22 PM
|
|
|
|
RE: unde gresesc?
Posteaza sursa sa ma uit putin pe ea.
How do I grab email addresses of a web page?
|
|
|
|
03-22-2010, 10:03 PM
|
|
flipper
Designer experimentat
      
|
Posts: 572
Joined: Nov 2009
Reputation: 11
|
|
RE: unde gresesc?
nu mergea, deoarece numele submit nu il gasea la formular.
PHP Code:
<input name="Submit" value="" class="Enviar" type="submit">
am inlocuit Submit cu submit.
nu ma complic cu cine stie ce criterii de siguranta, pentru ca nu va fi nevoie, sper. in cazul in care formularul va fi utilizat in mod excesiv pentru spam, flood si alte nebunii, o sa recurg si la alte metode. multumesc oricum pentru sfat.
acum ma gandesc cum sa fac un formular pentru afisarea bannerelor din portofoliu, pentru ca vreau sa pun si linkuri pe ele. si vreau ca acele imagini sa le pot uploada si sa se redenumeasca in mod automat, gen banner125_001, banner125_002 etc.  .
o sa citesc zilele astea niste tutoriale, poate reusesc ceva..
numai bine
Acelasi pentru toti, diferit pentru fiecare | Banner 125px GRATUIT
|
|
|
03-22-2010, 10:09 PM
(This post was last modified: 03-22-2010 10:11 PM by AccesInterzis.)
|
|
|
RE: unde gresesc?
Uite un PoC al unui formular de upload: http://www.accesinterzis.ro/index.php/pr...ad-in-php/ . E securizat si redenumeste imaginea. Iti permite sa restrictionezi multe. Nu trebuie decat sa il adaptezi la proiectul tau.
Singura chestie pe care nu o face e ca nu parseaza imaginea sa vada daca contine "balarii" in ea. Dar ca sa eviti sa se execute eventualele rahaturi din imagine faci un .htaccess in care scrii Options -Indexes.
How do I grab email addresses of a web page?
|
|
|
|
|
 |
|
 |
|
|