Sari la conținut
Forum Roportal
Jockeru

Tutorial php:cum sa faci un sistem de votare...

Evaluează acest topic

Postări Recomandate

1.Se intra in phpmyadmin...creem o baza de date....luam la intamplare...sa zicem votare si facem un tabel numit intrebare cu 2 campuri(id,inrebare). iar al 2 lea tabel ii dam numele optiuni care va avea 3 coloane...(id,optiune,voturi)la campul voturi il punem de typul BIGINT.

Dupa ce am creeat cele 2 tabele intram in tabelul optiuni dam click pe INSERARE(bara de sus) si introducem de 2 ori in optiune valorile da si nu,iar dupaceia tot aceasi actiune facem si la intrebare...dar acolo scriem intrebare...

 

2:Trebuie sa creeati un fisier config.php care il vom pune in radacina serverului vostru php(www) si scriem urmatorul cod:

<?php
$host = 'localhost';
$user = 'root';
$pass = 'parola_dumneavoastra';
$base = 'votare';
$conexiune= mysql_connect($host,$user,$pass)
or die ('Nu ma pot conecta la mysql');
mysql_select_db($base,$conexiune)
or die ('Nu gasesc baza de date '.$base.' ');
?>

acest cod este configurarea care ne permite sa ne connectam la mysql.

 

3:Creati un fisier index.php si copiati codul de mai jos:

<?php
require_once('config.php');

$sql = 'SELECT * FROM intrebare';
$rezultat = mysql_query($sql);
while($rand=mysql_fetch_array($rezultat)) {
echo '<table>
      <form method="POST" action="voteaza.php">
       Intrebare pentru tine:
       <tr><td><p>'.$rand['intrebare'].'</p></td></tr>';
}   

$sql = 'SELECT * FROM optiuni';
$rezultat = mysql_query($sql);
while($rand=mysql_fetch_array($rezultat)) {
echo '<tr><td><input type="radio" name="optiune" value="'.$rand['id'].'&'.$rand['voturi'].'">'.$rand['optiune'].'</td></tr>';
}
echo '<tr><td><input type="submit" name="Voteaza" value="Voteaza"></td></tr>
     <tr><td><a href="rezultate.php">Rezultate</a></td></tr>
    </form>
   </table>';
?>

vedem ca acest cod selecteaza anumite date din baza noastra de date...in cazul nostru intrebare si optiunile pe care le-am introdus manual(da si nu).

 

4:Creati un fisier voteaza.php si copiati codul de mai jos:

<?php
require_once('config.php');

if(!isset($_POST['Voteaza'], $_POST['optiune'])){ 
echo 'Pentru a vota trebuie sa alegi o optiune.<br /><a href="index.php">Back</a>';
}else{
$informatii = explode('&', $_POST['optiune']);
$id = $informatii[0];
$voturi = $informatii[1];
$sql = "UPDATE optiuni SET voturi=(".$voturi."+1) WHERE id=".$id." ";
mysql_query($sql);
echo 'Ai votat cu succes...<br /><a href="rezultate.php">Rezultate</a>';
}
?>

observam ca acest cod nu introduce date in baza noastra de date...ci le modifica....pentru ca am folosit sintaxa UPDATE.

 

5:Creeati un fisier rezultate.php si copiati codul de mai jos:

<?php
require_once('config.php');

$sql = 'SELECT * FROM intrebare';
$rezultat = mysql_query($sql);
while($rand=mysql_fetch_array($rezultat)) {
echo '<table>
      <tr><td><p>'.$rand['intrebare'].'</p></td></tr>';
}

$sql = 'SELECT * FROM optiuni';
$rezultat = mysql_query($sql);
$totale = mysql_result(mysql_query('SELECT SUM(voturi) FROM `optiuni`'),0);		
while($rand = mysql_fetch_array($rezultat)) {
$procent = ($rand['voturi']*100)/$totale;
if($procent <= 1) $procent = 0;

echo '<tr><td>'.$rand['optiune'].'</td><td>'.$rand['voturi'].' Voturi:</td><td><img src="images/linie.gif" width="'.$procent.'" height="9"></td></tr>';
}
echo '<a href="index.php">HOME</a>';
?>

iar acest cod...ne arata rezultatele folosind sintaxa SELECT.

 

PS:acele coduri eu va sugerez sa le studiati unpic...veti vedea ca nu este greu deloc....

Partajează acest post


Link spre post
Distribuie pe alte site-uri

E foarte bun tutorialul. Multumesc foarte mult! Am incercat sa adaug mai multe intrebari care mi le afiseaza bine, dar cand am incercat sa schimb codul sa-mi apara optiunile ,,Da", ,,Nu" in dreptul fiecarei intrebari, imi da eroare. V-as fi tare recunoscatoare daca m-ati putea ajuta sa rezolv aceasta problema. Va multumesc anticipat!

Partajează acest post


Link spre post
Distribuie pe alte site-uri

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum

×