Autor Zpráva
jakto
Profil *
dobrý den, potřeboval bych zprovoznit svuj web na Localhostu vsechny jiné weby co jsem zkousel funguji např. PHPBB forum atd.. Muj web kdyz jsem nahral na Webhosting tak taky fungoval ale potřebuju to zprovoznit na svém Localhostu.

Pri otevření localhostu nenačte stranku ale jen tyhle chyby:

Deprecated: mysql_query(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 13

Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 14

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 25

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 36

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 43

Notice: Undefined index: upcoming_page in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 50

Notice: Undefined index: live_page in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 51

Notice: Undefined index: closed_page in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 52

Notice: Undefined variable: SETTINGS in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 75

Notice: Undefined variable: SETTINGS in C:\EasyPHP-DevServer-13.1VC11\data\localweb\pagepagination.php on line 128

Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\EasyPHP-DevServer-13.1VC11\data\localweb\index.php on line 19

Notice: Undefined variable: SETTINGS in C:\EasyPHP-DevServer-13.1VC11\data\localweb\index.php on line 21

kde je problém? s jinyma webama problem není :) a na webserveru to běží
Kajman
Profil
Nejlepší bude, když si chyby v kódu způsobující varování opravíte. Na hostingu je asi zakázáné vypisování chyb do stránky (což neznamená, že tam stejné problémy nejsou).
jakto
Profil *
A nešlo by to zakazat i v Apachy? :) bylo by to jednoduší, nez to opravovat, kdyz ani nevím pořádně nevím jak, co je za problém.
Kajman
Profil
Přenastavte si display_error na off, viz Nejčastější potíže s PHP (FAQ) ale bude se Vám pak mnohem hůře pracovat, když chyby neuvidíte přímo na stránce.
jakto
Profil *
Nepomohlo, program pak vypisoval nejakou chybu, při změně na off. Zkusil jsem vytvorit soubory

.user.ini a .htaccess a zakazal vypisovaní chyb tak na pul se povedlo jenze stranka se porad nenacte. Pise:

4 ) define ('PHP_4',0); else define ('PHP_4',1); $PHP_SELF=htmlspecialchars($_SERVER['PHP_SELF']); $REMOTE_ADDR=(get_magic_quotes_runtime()) ? $_SERVER['REMOTE_ADDR']: addslashes($_SERVER['REMOTE_ADDR']); if(isset($_SESSION['PHPAUCTION_LOGGED_IN_USERNAME'])) $_SESSION['***_LOGGED_IN_USERNAME'] = addslashes($_SESSION['***_LOGGED_IN_USERNAME']); #// ######################################################################################################## #// Test mode #// TESTMODE variable will force *** XL to run in "test mode" ($***_TESTMODE = 'yes') #// or in "live mode" ($PHPAUCTION_TESTMODE = 'no') #// #// When running in test mode Phpuction will provide you the ability to use the Paypal simulator #// to simulate the payment processes $***_TESTMODE = 'yes'; // Possible values: 'yes, 'no' $TEST_PAYPAL_EMAIL = '***_1256331752_biz@gmail.com'; // Put you PayPal Sandbox Business Email Here.     #// ######################################################################################################## //-- This is the directory where passwd.inc.php file resides - requires ending slash $main_path = "/home/aaronth1/public_html/"; $include_path = "/home/aaronth1/public_html/includes/"; //-- This is the directory where users pictures will be uploaded - requires ending slash //-- Under Windows use something like C:\path\to\you\uploaddir\ $image_upload_path = "/home/aaronth1/public_html/uploaded/"; $uploaded_path = "uploaded/"; //-- This string is added to passwords before generating the MD5 hash //-- Be sure to never change it after the firt set up or //-- your users passwords will not work $MD5_PREFIX = "This_Is_My_Random_String_For_The_MD5_Hash_Algorithm"; if ( !isset ( $_SESSION['security'] ) ) $_SESSION['security'] = md5( $MD5_PREFIX . rand (0,100000) ); /* This is the log file generated by cron.php - insert the complete file name (including the absolute path). If you don't want to generate a log file for cron activity simply leave this line commented. */ #$logFileName = "/var/www/***/logs/cron.log"; #$logFileName = "C:\path\to\cron.log"; /* Set this to TRUE if you want cron to generates HTML output BESIDES the cron file declared above. cron.php cannot generates only HTML output. */ $cronScriptHTMLOutput = FALSE; include $include_path."settings.inc.php"; include $include_path."messages.inc.php"; include $include_path."languages.inc.php"; ?> 4 ) define ('PHP_4',0); else define ('PHP_4',1); $PHP_SELF=htmlspecialchars($_SERVER['PHP_SELF']); $REMOTE_ADDR=(get_magic_quotes_runtime()) ? $_SERVER['REMOTE_ADDR']: addslashes($_SERVER['REMOTE_ADDR']); if(isset($_SESSION['PHPAUCTION_LOGGED_IN_USERNAME'])) $_SESSION['***_LOGGED_IN_USERNAME'] = addslashes($_SESSION['***_LOGGED_IN_USERNAME']); #// 
Kubo2
Profil
jakto:
A nešlo by to zakazat i v Apachy? :) bylo by to jednoduší, [...] kdyz ani nevím, co je za problém.
Radšej si tie chyby oprav, a nezakazuj ich vypisovanie. Notices a Warnings už určite stoja za povšimnutie. Hlášky typu deprecated|strict standards nepotrebuješ, ak nebudeš pravidelne updatovať PHP, ale s tvojím aktuálnym webom pobežíš na verzii, ktorú tam máš teraz, a zakážeš ich pomocou jednoduchého zápisu v php.ini:
display_errors = On
error_reporting = E_ALL & ~E_DEPRECATED | ~E_STRICT
Tieto direktívy tam však už môžu byť vopred (a väčšinou aj sú), takže ich stačí iba vyhľadať a prepísať im hodnoty, reštartovať Apache, a je to.

Ďalej doporučujem prečítať si o riešení chýb v PHP skriptoch.

Kajman:
Malá chybička: display_error neexistuje, zabudol si na konci s. (Preklep?)
Správne je to display_errors.
jakto
Profil *
To tam vsechno je =) ale porád to stejné..
Kubo2
Profil
Edit:// Pána beka, zdá sa, že si zabil PHP, alebo si s ním skôr porobil nejakú čiernu mágiu, pretože keby si ho zabil, tak by ti prehliadač otváral download dialog.


jakto:
To tam vsechno je =) ale porád to stejné...
Tak zmaž .user.ini aj .htaccess a napíš to do konfiguráku php.ini.
Potom reštartuj server a skús to znovu.
jakto
Profil *
Soubory smazány, v PHP.ini je to vsechno zapsané, ale prostě NIC... :( Už nevím.


Není problém někde v mysql? :) v chybach se to pořád opakuje
Davex
Profil
Ono spouštět zastaralé a neupravené PHP skripty na nejnovější verzi PHP nemusí být vůbec možné, protože některé vlastnosti, které dřív fungovaly (jako např. register_globals) už teď nefungují a výchozí nastavení v php.ini by se muselo vyladit (např. short_open_tag = On).
jakto
Profil *
Na http://www.php5.cz/ jsem svuj web rozjel a jede na PHP 5.5.1. tak stím by snad problem neměl být. Ale zkusím se podívat po starší verzi PHP
Davex
Profil
jakto:
Pokud ti na PHP 5.5 jede, tak se zkus podívat na nastavení phpinfo() a upravit si hodnoty On/Off ve svém php.ini podle něj.
jakto
Profil *
Ani to nepomohlo, i kdyz chyb bylo min. Ale asi je to nemozny :) děkují za rady...
jakto
Profil *
Davex:
Pokud ti na PHP 5.5 jede, tak se zkus podívat na nastavení phpinfo() a upravit si hodnoty On/Off ve svém php.ini podle něj.

Tak se na konec povedlo :) přepsal jsem nastavení. Jenze po instalaci webu, hlasi prohližeč chybu

Při načítání adresy http://localhost/admin/ narazily stránky na chybu. Na této adrese možná právě probíhá údržba stránek, nebo jsou stránky chybně nakonfigurovány.



Kód chyby: 500
Fisir
Profil
Reaguji na jakta:
Buď je chyba ve skriptu, nebo jsi špatně upravil konfiguraci. Co je v logu?
jakto
Profil *
Konfigurace musí být v pohodě, nastavil jsem jí jako Webhostingu kde funguje.
Nemůže být problém že běží server na Windows? :) Na webu jsem četl, že se to nemá instalovat na servery s Windowsem.

LOG z Apache:
[Thu Aug 29 22:06:42.694335 2013] [:error] [pid 5860:tid 1264] [client 127.0.0.1:55546] PHP Parse error:  syntax error, unexpected 'C' (T_STRING) in C:\\EasyPHP-DevServer-13.1VC11\\data\\localweb\\includes\\config.inc.php on line 34
[Thu Aug 29 22:06:42.694335 2013] [:error] [pid 5860:tid 1256] [client 127.0.0.1:55544] PHP Parse error:  syntax error, unexpected 'C' (T_STRING) in C:\\EasyPHP-DevServer-13.1VC11\\data\\localweb\\includes\\config.inc.php on line 34


config.inc.php

<?
define('INCLUDED', 1);
if ( floor (phpversion()) > 4 )
   define ('PHP_4',0);
else
   define ('PHP_4',1);

$PHP_SELF=htmlspecialchars($_SERVER['PHP_SELF']);
$REMOTE_ADDR=(get_magic_quotes_runtime()) ? $_SERVER['REMOTE_ADDR']: addslashes($_SERVER['REMOTE_ADDR']);
if(isset($_SESSION['***_LOGGED_IN_USERNAME'])) 
    $_SESSION['***_LOGGED_IN_USERNAME'] = addslashes($_SESSION['***_LOGGED_IN_USERNAME']);
#// ########################################################################################################
#// Test mode
#// TESTMODE variable will force *** to run in "test mode" ($***_TESTMODE = 'yes')
#// or in "live mode" ($***_TESTMODE = 'yes')
#//
#// When running in test mode Phpuction will provide you the ability to use the Paypal simulator
#// to simulate the payment processes
$***_TESTMODE = 'no'; // Possible values: 'yes, 'no'
$TEST_PAYPAL_EMAIL = 'riririr@cccc.cz';  // Put you PayPal Sandbox Business Email Here.        
#// ########################################################################################################

//-- This is the directory where passwd.inc.php file resides - requires ending slash

$main_path = ""; 
$include_path = "C:\EasyPHP-DevServer-13.1VC11\data\localweb\includes\"; 

//-- This is the directory where users pictures will be uploaded - requires ending slash
//-- Under Windows use something like C:\path\to\you\uploaddir\

$image_upload_path = "C:\EasyPHP-DevServer-13.1VC11\data\localweb\uploaded\"; 
$uploaded_path = "uploaded\"; 


//-- This string is added to passwords before generating the MD5 hash
//-- Be sure to never change it after the firt set up or 
//-- your users passwords will not work
$MD5_PREFIX = "This_Is_My_Random_String_For_The_MD5_Hash_Algorithm";

if ( !isset ( $_SESSION['security'] ) )
  $_SESSION['security'] = md5( $MD5_PREFIX . rand (0,100000) );

/*
This is the log file generated by cron.php - insert the complete
file name (including the absolute path).
If you don't want to generate a log file for cron activity simply
leave this line commented.
*/
#$logFileName = "/var/www/***/logs/cron.log";
#$logFileName = "C:\path\to\cron.log";
/*
Set this to TRUE if you want cron to generates HTML output
BESIDES the cron file declared above. cron.php cannot generates
only HTML output.
*/
$cronScriptHTMLOutput = FALSE;

include $include_path."settings.inc.php";
include $include_path."messages.inc.php";
include $include_path."languages.inc.php";
?>



Ještě se tam píše že scripty nebudou fungovat v jiné zemi než USA, jestli jsem si to dobre přelozil... Je to možný? :O
Davex
Profil
jakto:
Je to tím, že to běží na Windows, kde se pro oddělení adresářů používá zpětné lomítko, které se také používá pro escapování znaků. Pro zápis zpětného lomítka v řetězci se vždy musí používat dvě zpětná lomítka.

$include_path = "C:\\EasyPHP-DevServer-13.1VC11\\data\\localweb\\includes\\";
jakto
Profil *
Wau, po opravení to hned fungovalo =) Díky. Zítra přejdu na Linux, přepisování kodu by dalo moc prace porad jsou chyby v dalších souborech...
jakto
Profil *
Tak web je zprovozněn na Linuxu, teď bych potřeboval poradit jak nastavit CRON. Mam navod s nastavenim

Setup cronjobs / scheduled tasks if possible as the 'root' user. ROOT USER IS BEST.  There needs to be 6 setup to run every minute in order for the site's refresh to function correctly.

sleep 10; /usr/bin/wget -O - -q -t 1 http://www/cron.php>/dev/null 2>&1
sleep 10; /usr/bin/wget -O - -q -t 1 http://www/wwwwwddw.php>/dev/null 2>&1
sleep 10; /usr/bin/wget -O - -q -t 1 http://www/wdwdw.php>/dev/null 2>&1
sleep 10; /usr/bin/wget -O - -q -t 1 http://www/wdddw.php>/dev/null 2>&1
sleep 10; /usr/bin/wget -O - -q -t 1 http://www/wd.php>/dev/null 2>&1
sleep 10; /usr/bin/wget -O - -q -t 1 http://www/dwdwcron.php>/dev/null 2>&1

You need to setup 3 cronjobs / scheduled tasks of the following command at 10 minutes 30 minutes and 50 minutes every hour.

/sbin/service httpd restart >/dev/null 2>&

Netuším kam to zapsat, zkousel jsem každý řádek napsat do konzole,ale nic. Pak zkousel přikaz: crontab -e otevrel se mi jakýsi editor Cronu, tam jsem to zapsal, a ulozil ale stale nic.
jakto
Profil *
* * * * * sleep 10; /usr/bin/wget -O - -q -t 1 http://109.108.116.233/cron.php>$;
* * * * * sleep 10; /usr/bin/wget -O - -q -t 1 http://109.108.116.233/get_time2$;
* * * * * sleep 10; /usr/bin/wget -O - -q -t 1 http://109.108.116.233/get_time3$;
* * * * * sleep 10; /usr/bin/wget -O - -q -t 1 http://109.108.116.233/item_page$;
* * * * * sleep 10; /usr/bin/wget -O - -q -t 1 http://109.108.116.233/uniquecro$;
* * * * * sleep 10; /usr/bin/wget -O - -q -t 1 http://109.108.116.233/autobidde$;
0,15 * * * * * /sbin/service httpd restart >/dev/null 2>&1
0,30 * * * * * /sbin/service httpd restart >/dev/null 2>&1
0,50 * * * * * /sbin/service httpd restart >/dev/null 2>&1
Takhle jsem to zkoušel, ale nefunguje.

Nějáké nápady? :)
Davex
Profil
jakto:
Tak web je zprovozněn na Linuxu, teď bych potřeboval poradit jak nastavit CRON.
Není Linux jako Linux, ale cron se může nastavovat na několika místech. Je systémové nastavení asi na 5 místech. Pro spuštění vlastních systémových úloh, jako třeba restart Apache, doporučuji vytvořit soubor s konfigurací v adresáři /etc/cron.d/. Pro spouštění uživatelských úloh (jako je třeba spouštění wget) je vhodnější zadat úlohy pod nějakým běžným uživatelem přes příkaz crontab -e.

You need to setup 3 cronjobs / scheduled tasks of the following command at 10 minutes 30 minutes and 50 minutes every hour.
Opravdu nechápu, proč by se měl třikrát za hodinu restartovat Apache.

[#20] „Takhle jsem to zkoušel, ale nefunguje.
To by mělo být správně. Když ty příkazy spustíš ručně, tak fungují? Tady na diskusi vypadají ty příkazy divně, ale to ti možná sežralo zdejší forum.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: