nastavenie php.ini

Sekcia: Programovanie 24.02.2009 | 15:54
Avatar Dare_devil Debian, OpenSuse  Používateľ
Dobry den. Tak som tu zas :)
Snazim sa rozbehat si doma na localhoste server tak ako je na hostingu kde spravujem jeden nemenovany portal ( aby som mohol otestovat na mojom serveri presnu verziu portalu a potom ju bezproblemovo v priebehu par sekund hodit na net, to je snad pochopitelne ).

Povolil som si funkcie, triedy atd.. odkomentoval mysql.so mysqli.so a dalsie, no stale to nejde a neviem preco, zda sa mi, ze problem bude inde.
Mam /lib/Sql.php, ktory obsahuje :
<?
function connection()
{
 $host="localhost";
 $uziv_db="user";
 $heslo_db="pass";
 $db="db";
 $port=0;
 $soket="";
 global $mysqli;
 @$mysqli=new mysqli($host,$uziv_db,$heslo_db,$db,$port,$soket);
 if (mysqli_connect_errno())
 {
  @$mysqli=new mysqli("localhost", "user", "pass", "db");
 }
 if (mysqli_connect_errno())
 {
  die ("Could not connect db! Is mysqld turned on ? :) ");
 }
 return $mysqli;
}
?>
V indexe volam na zaciatku toto:
<?php
	date_default_timezone_set('Europe/Bratislava');
	define('DS',DIRECTORY_SEPARATOR);
	define('APPROOT', realpath(dirname(__FILE__)) . DS);
	set_include_path(APPROOT . 'lib' . PATH_SEPARATOR . get_include_path());
	require_once('Loader.php');
	include('Sql.php');
	$mysqli = connection();
?>

/lib/Loader.php obsahuje toto:
<?php

function __autoload($class)
{
	$file = str_replace('_', DS, $class) . '.php';
	if(!file_exists(APPROOT . 'lib' . DS . $file))
		die("File '$file' not found within 'lib' directory!");
		
	include_once($file);
	if(!class_exists($class, false))
		die("Class '$class' not defined in file '$file'!");
}
?>

Loader mi sluzi na to, ze ked zavolam triedu dajme tomu $Pes = new $Pes(); , tak mi to automaticky urobi toto :

include_once('/lib/Pes.php');
$Pes = new $Pes();

A mam pokoj.. Mozem volat akukolvek funkciu bez toho aby som sa musel srat s include, staci, ak existuje v /lib/

Je tu ale problem. Index mi hlasi:

File 'mysqli.php' not found within 'lib' directory!

A neviem co s tym mam urobit a tak prosim o radu. Na hostingu vsetko ide ako ma.

php.ini som sa pokusal editovat prvy krat a zda sa mi ze som si pomocou dokumentacie vsetko zapol tak ako mam, len ta mysqli.so nejak nejde.

Dakujem za odpovede
There is no flag large enough to cover the shame of killing innocent people
    • Re: nastavenie php.ini 24.02.2009 | 16:51
      Avatar Lapajko Arch Linux  Používateľ
      na serveri a u seba si pozri

      <?php
      phpinfo();
      ?>

      a porovnaj si ich....
      tazko sa hlada chyba, ked su tu vytrhnute iba kusky kodu
      • Re: nastavenie php.ini 24.02.2009 | 17:29
        Avatar Dare_devil Debian, OpenSuse  Používateľ
        U mna na localhoste nejako neviem najst kolonku "mysql" ani "mysqli" :/
        There is no flag large enough to cover the shame of killing innocent people
        • Re: nastavenie php.ini 24.02.2009 | 17:34
          Avatar Dare_devil Debian, OpenSuse  Používateľ
          Ale ja to nechapem mam tam normalne
          ;extension=mime_magic.so
          extension=mysql.so
          extension=mysqli.so
          ;extension=ncurses.so
          ;extension=odbc.so
          ;extension=openssl.so
          ;extension=pdo.so
          ;extension=pdo_mysql.so
          ;extension=pdo_odbc.so
          
          A mysql sa spusta spolu s httpd pri boote
          There is no flag large enough to cover the shame of killing innocent people
          • Re: nastavenie php.ini 24.02.2009 | 18:26
            Avatar Dare_devil Debian, OpenSuse  Používateľ
            mysql pritom funguje, phpmyadmin mi pise:
            Cannot load session extension. Please check your PHP configuration.
            pritom tam mam
            extension=session.so
            :(
            Co s tym? prvy krat editujem php.ini
            There is no flag large enough to cover the shame of killing innocent people
            • Re: nastavenie php.ini 26.02.2009 | 09:12
              Avatar Lapajko Arch Linux  Používateľ
              1. pridat extension mysql alebo mysqli
              2. restartovat apache
              3. kuknut ci to funguje
              4. ak nie, pozri apache logy
              5. ak tam bude chyba, tak googlis podla erroru
              6. ak tam nebude chyba, tak si kontroluj, ci nemas nahodou viac php.ini a ci editujes to spravne
              • Re: nastavenie php.ini 26.02.2009 | 18:09
                Avatar Dare_devil Debian, OpenSuse  Používateľ
                1. to tam mam ( pisal som to vyssie )
                2. restartoval som
                3. nefunguje
                4. kde su logy? ( googlil som ale neviem najst umiestnenie popr. ako ich vypisat )
                5. -
                6. nemam, je tam iba php.ini a php.ini.save
                There is no flag large enough to cover the shame of killing innocent people
                • Re: nastavenie php.ini 26.02.2009 | 21:14
                  Avatar Milan Dvorský debian,mint kde,android  Administrátor
                  • Re: nastavenie php.ini 26.02.2009 | 23:38
                    Avatar Dare_devil Debian, OpenSuse  Používateľ
                    Ok, mal som chybu na riadku 28, kedze som mal odkomentovane
                    ; | bitwise OR
                    ; & bitwise AND
                    ; ~ bitwise NOT
                    ; ! boolean NOT

                    neviete preco mi to robi problem?
                    A zadalsie, kde mam problem, ked neviem zavolat funkciu connection(); ?
                    ; disable_functions =
                    ; disable_classes =
                    som odkomentoval a zmenil na * = FALSE , v logu nieje ziadna chyba, ale stale mi to pise Fatal error: Call to undefined function connection() in /srv/http/projekt/index.php on line 8 , aj ked som zadal uplnu cestu include-u ku suboru, v ktorom funkcia connection(); je definovana.
                    A ako mozem povolit v php.ini, aby som mohol pouzivat set_include_path a pod. ? teda aby som pomocou php mohol dodatocne pre urcitu stranku menit urcite nastavenia php.ini?

                    Dakujem
                    There is no flag large enough to cover the shame of killing innocent people
                    • Re: nastavenie php.ini 27.02.2009 | 10:15
                      Avatar Lapajko Arch Linux  Používateľ
                      pastni sem komplet riadok z logu a mozes aj cele php.ini / alebo ho niekomu posli, nech to skusi.
                      Mohol by si aj mne, ale nechcem publikovat svoj email :)
                      • Re: nastavenie php.ini 27.02.2009 | 10:15
                        Avatar Lapajko Arch Linux  Používateľ
                        este jedna vec: neviem kedy sa k tomu dostanem, ale snad vecer
                      • Re: nastavenie php.ini 27.02.2009 | 13:36
                        Avatar Dare_devil Debian, OpenSuse  Používateľ
                        There is no flag large enough to cover the shame of killing innocent people
                        • Re: nastavenie php.ini 28.02.2009 | 11:49
                          Avatar Lapajko Arch Linux  Používateľ
                          tieto riadky maju byt zakomentovane, takto:

                          ; | bitwise OR
                          ; & bitwise AND
                          ; ~ bitwise NOT
                          ; ! boolean NOT
                          • Re: nastavenie php.ini 28.02.2009 | 14:06
                            Avatar Dare_devil Debian, OpenSuse  Používateľ
                            No to viem, ale to mi stale neriesi problem s tym co mam. Mysqli aj mysql uz mam v phpinfo, ale stale mi to pise :
                            Fatal error: Call to undefined function connection() in /srv/http/portal/index.php on line 8 ( aj ked som zadal uplnu cestu ku Sql.php teda /lib/Sql.php )
                            There is no flag large enough to cover the shame of killing innocent people