Tema: PHP pomoć
Pogledajte određenu poruku
Staro 16. 11. 2009.   #23
Latino Discovery
novi član
 
Datum učlanjenja: 06.11.2009
Poruke: 9
Hvala: 9
0 "Hvala" u 0 poruka
Latino Discovery is on a distinguished road
Default

Evo mene opet, blago meni, opet ja

Konačno imam kod koji radi.
Poslušao sam ovo što su rekli holodoc i JovanT. I video sam zašto AnonymousCoward kaže da MySQL-ov rand() ni najgorem neprijatelju ne bi preporučio (reason), ali ću to da isprobavam drugi put.

sada imam fajl bapro.php koji izgleda ovako..
PHP kôd:
<?php

    
//Konekshn
    
include "db.php";

    
$rezultat mysql_query("SELECT * FROM fraze ORDER BY RAND() LIMIT 1");
    
$red mysql_fetch_assoc($rezultat);
    
$id $_GET['id']; 
    
    if( empty(
$id)) {
    
srand(time());
    
$id=rand(1mysql_result(mysql_query("SELECT COUNT('id') FROM fraze"), 0));
                    }
                    
    
$rezultat2 mysql_query("SELECT * FROM fraze WHERE id=$id"); 
    
$red2 mysql_fetch_assoc($rezultat2);
    
    
// Broj fraza u bazi
    
$brojac mysql_query("SELECT * FROM fraze");
    
$broj_u_bazi mysql_num_rows($brojac);

    
//Računa trenutni rejting
    
$current $red2[total] / $red2[votes];

    
    
    
//Ispisuje jednu, nasumično izabranu SMS poruku
    
echo "SMS dana: ";
    echo 
$red2['tekst'] ."<br />";

    
//Ispisuje trenutni broj SMS-ova u bazi
    
echo "Broj SMS-ova u bazi je:"
    echo 
$broj_u_bazi ."<br />";

    
//Ispisuje trenutni rejting poruke, zaokruzen na jednu decimalu
    
echo "Trenutni rejting ovog SMS-a je:";
    echo 
round($current1) ."<br />";
    
    
//Link za generisanje slučajno odabranog sms-a iz baze
    
echo "<a href='?id=" $red['id'] . "'>Prikaži sledeći SMS</a>" "<br>";
    
        
    
    
//Linkovi za glasanje
    
$script htmlentities($_SESSION['PHP_SELF'], ENT_QUOTES'utf-8');
    
    echo 
"Oceni me: ";
    echo 
"<a href=".$script."?mode=vote&voted=1&id=".$red2['id']."> 1</a> | "
    echo 
"<a href=".$script."?mode=vote&voted=2&id=".$red2['id']."> 2</a> | "
    echo 
"<a href=".$script."?mode=vote&voted=3&id=".$red2['id']."> 3</a> | "
    echo 
"<a href=".$script."?mode=vote&voted=4&id=".$red2['id']."> 4</a> | "
    echo 
"<a href=".$script."?mode=vote&voted=5&id=".$red2['id']."> 5</a> | "
    
    
    
$mode $_GET['mode'];
    
$voted intval($_GET['voted']);
    
    
//bodovanje ocenama isključivo od 1 do 5
    
if(($voted 1)||($voted>5)) die;
    if (
$mode=="vote")
    {
    
//ubacuje ocene i broj glasova u bazu
    
mysql_query ("UPDATE fraze SET total = total+$voted, votes = votes+1 WHERE id = $id");
    echo 
"<meta http-equiv='refresh' content='0;URL=bapro.php'>"
    }
                    
    
?>
i db.php fajl koji izgleda ovako..

PHP kôd:
<?php
    $hostname 
"localhost";
    
$user "root";
    
$password "";
    
$base "baza";



    
$db mysql_connect($hostname$user$password) or die(mysql_error());
    
    
mysql_select_db($base$db) or die(mysql_error());

    
mysql_query("SET NAMES utf8");
    
mysql_query("SET CHARACTER SET utf8");
    
mysql_query("SET COLLATION_CONNECTION='utf8_unicode_ci'");
    
?>
(koliko sam se samo namučio da pokazuje č,ć,ž,š i đ )

a preview u pretraživaču izgleda 'vako..


Sve funkcioniše kako treba..
Kada kliknem na "Prikaži sledeći SMS", on prikaže nasumično izabrani SMS.
Kad kliknem na ocenu, on oceni SMS koji treba i prikaže sledeći nasumično izabrani SMS.

E sad.. ono što mene zanima je sigurnost..
Ja sam samo ubacio ono što je AnonymousCoward rekao (intval() komandu)..
Da li postoji neka elementarna stvar koju sam propustio?
Nešto što bih morao da dodam, a nisam?
Treba li da stoji mysql_close( ) na kraju bapro.php fajla?
Jel sigurno da upload-ujem ovakav sajt i bazu?

Hvala unapred na odgovorima.
Latino Discovery je offline   Odgovorite uz citat