[ borcha @ 16.07.2013. 17:53 ] @
Pokusavam izvuci parametre iz .INI fajla za povezivanje za bazom..

naziv fajla serset.ini i nalazi se u korenom dir..... sa nazivom INI (../INI/serset.ini).
Code:

[mysql]
mysq_hostname=localhost
mysq_user=root
mysq_pass=root
mysq_port=3306
mysq_dbname=baza


napravio sam i class-u CON

nalazi se u faljlu : condata.php .

Code:

class CON {
       
        
        public $host;
        public $user;
        public $pass;
        public $port;
        public $database; 
    
    function __construct() {
        
        $pain=  parse_ini_file("INI/serset.ini",true);
       
        $this->host=$pain['mysql']['mysq_hostname'];
        $this->user=$pain['mysql']['mysq_user'];
        $this->pass=$pain['mysql']['mysq_pass'];
        $this->port=$pain['mysql']['mysq_port'];
        $this->database=$pain['mysql']['mysq_dbname'];
        
             
        $this->openCon();
        
    } 
    
     
        
        public function openCon(){
           $con=mysql_connect($this->host, $this->user, $this->pass);

            if(!$con){
                die('Greska u povezivanju sa bazom: ' . mysql_error());
            }

          mysql_select_db($this->database,$con);
          mysql_query("set names 'utf8'"); 
          
         
          
          
        }
    
 
    }




Desava se da ne moze pronaci fajl tj uraditi parsiranje:
Code:

Warning: parse_ini_file(INI/serset.ini) [function.parse-ini-file]: failed to open stream: No such file or directory in C:\xampp\htdocs\<SAJTFOLDER>\php\condata.php on line 15



[ borcha @ 16.07.2013. 17:55 ] @
I naravno pozivi konekcije
Code:


    include 'condata.php';
    include '../condata.php';
    include '../../condata.php';


[ Nemanja Avramović @ 16.07.2013. 19:36 ] @
Je l' putanja ../INI/serset.ini ili ./INI/serset.ini? Razlika je ogromna. Drugo, na *nix sistemima su putanje fajlova case-sensitive (za razliku od Windowsa), tako da i folder mora da se zove "INI" a ne "ini" ili bilo kako drugačije.

Treće, svako može da otvori www.sajt.com/INI/serset.ini i da vidi podatke za login na MySQL.
[ kelja @ 16.07.2013. 19:36 ] @
Cekaj...
ini fajl nije u direktorijumu u kom se nalazi sajt?
[ borcha @ 16.07.2013. 19:41 ] @
putanja je INI/serset.ini


u korenu je!
[ borcha @ 16.07.2013. 19:43 ] @
Citat:
Nemanja Avramović:
Je l' putanja ../INI/serset.ini ili ./INI/serset.ini? Razlika je ogromna. Drugo, na *nix sistemima su putanje fajlova case-sensitive (za razliku od Windowsa), tako da i folder mora da se zove "INI" a ne "ini" ili bilo kako drugačije.

Treće, svako može da otvori www.sajt.com/INI/serset.ini i da vidi podatke za login na MySQL.


Da folder se zove INI a ne ini malim. To je ok...

Ok , pocetnik sam pa ako mozes malo ...savet.. gde da ga stavim posto iz njega hocu parametre za database i ostalo bitno.

[Ovu poruku je menjao borcha dana 16.07.2013. u 20:55 GMT+1]
[ borcha @ 16.07.2013. 19:59 ] @
Citat:
kelja:
Cekaj...
ini fajl nije u direktorijumu u kom se nalazi sajt?


Jeste u korenom je.
[ bantu @ 17.07.2013. 07:34 ] @
Pogledaj kako se koristi konstanata DIRECTORY_SEPARATOR.

Takođe, nije pametno držati ini file dostupan za serviranje korisniku, npr. šta se desi kada u browser ukucaš http://127.0.0.1/INI/serset.ini, onda moraš na neki način da obezbjedis da se neće prikazati korisniku.

[ plus_minus @ 17.07.2013. 08:22 ] @
Citat:
npr. šta se desi kada u browser ukucaš http://127.0.0.1/INI/serset.ini


Nema to neke veze. Može da drži taj .ini fajl gde hoće. Najbolje je da ga krsti sa tačkom ispred naziva.. nešto ovako.. ".hidden.file.ini" i da njega takvog stavi u "/var/www/.INI/" dir.. npr.
Jedna najobičnija tačka ispred naziva direktorijuma ili fajla i to za apache postaje system/hidden..

U .htaccess-u onda doda još i ove sitnice ..

Code:


IndexIgnore .htaccess .*

<IfModule mod_rewrite.c>

RewriteEngine On
RewriteRule \.ini$ - [R=404]

...
...
..
</IfModule>



I za svaki slučaj, u svakom direktorijumu, gde ne postoji, po jedan index.php (blanko ili ne, nebitno).
I može mirno da spava.

Malo mnogo više tehnike, da se pročitaju takvi .ini fajlovi i da se zađe "tu i tu", treba posle .. od strane 15. lica...
[ tarla @ 21.07.2013. 21:35 ] @
I sutra prebaci app na host koji ne koristi apache i eto problema...

Odakle god da si počeo učiti, batali i traži drugi izvor...
[ plus_minus @ 24.07.2013. 18:10 ] @
Pa šta će da se desi i ako prebaci na host koji ne koristi apache? Neće da mu rade fajlovi ili će sve da bude vidljivo na izvol'te, ...m?
Jel' možeš da dočaraš koliko bi taj problem bio veliki i koliko bi eventualno vremena trebalo da se to prepravi za odgovarajući host i da se odgonetne taj problem ... ?

Evo, ja ću da ti kažem - vrlo malo vremena.
[ alfa-pro @ 30.07.2013. 08:51 ] @
Koristi MYSQLI

http://php.net/manual/en/migration55.deprecated.php