Помош со MySQL и PHP

  • Креатор на темата Креатор на темата DimitarMK
  • Време на започнување Време на започнување
Помош за ПХП

Имам еден проблем незнаев каде да го ставам , па ајде отворив нова тема .. него да преминам на проблемот .

Работам на една страна и сакам да направам нешто како администерација да преку таа страна пополнувам базата и сл . Е сеа за влез во таа страна администрација ставив скрипта со усер и пасворд и кога успешно кје се внесат ме пренасочува на пр. /adminisstration.html , е сеа тоа со ме буни е јас и кога кје напишам domen.com/administation.html пак си се отвара и пасвордот ми е како за dzабе , како да направам со тие усер и пасс да ја заштитам во примеров /adminisstration.html и да напоменам за логин користам domen.com/login.html и од кога се точни усерот и пасот тогас ме пребацува на другава.

Се надевам некој ме сфати :toe:
 
Ти треба систем за логирање со колачиња или сесии. Логиката би одела вака некако: доколку корисникот внесе точно корисничко име и лозинка, започни сесија во која ќе имаш некоја сесиска променлива (пр. $_SESSION['najaven'] = TRUE;). После, на почетокот на страните кои треба да ги заштитиш ќе провериш дали е отворена сесија и дали постои таа променлива со потребната вредност. Ова е најпросто објаснето, инаку може да се надградува ехеее..

Прочитај некоја од лекциите што ги дава Гугл како резултати.. ќе ти се објаснат многу работи.

На страна тоа, туку како очекуваш да ти работи PHP код во .html фајл? Смени ја наставката во .php..
 
Ти треба систем за логирање со колачиња или сесии. Логиката би одела вака некако: доколку корисникот внесе точно корисничко име и лозинка, започни сесија во која ќе имаш некоја сесиска променлива (пр. $_SESSION['najaven'] = TRUE;). После, на почетокот на страните кои треба да ги заштитиш ќе провериш дали е отворена сесија и дали постои таа променлива со потребната вредност. Ова е најпросто објаснето, инаку може да се надградува ехеее..

Прочитај некоја од лекциите што ги дава Гугл како резултати.. ќе ти се објаснат многу работи.

На страна тоа, туку како очекуваш да ти работи PHP код во .html фајл? Смени ја наставката во .php..

.php си е , моја грешка во пишување , него тоа си работи све значи скриптата си е одлична се логира све и имам наместено ако дадам точен усер у пасс да ме пребаци на друга страна , него тоа не е проблемот , проблемот е шо таа друга страна мозам да ја отворам и се едноставно куцање на пр. домаин/администрација , свајкас сеа ?
 
.php си е , моја грешка во пишување , него тоа си работи све значи скриптата си е одлична се логира све и имам наместено ако дадам точен усер у пасс да ме пребаци на друга страна , него тоа не е проблемот , проблемот е шо таа друга страна мозам да ја отворам и се едноставно куцање на пр. домаин/администрација , свајкас сеа ?


Не ти е 'одлична' т.е. ништо не си направил, арно ти кажа ти треба усер менаџмент.
 
дефинирај усер менаџмент те молам .. .
Ситем со кој што ќе го следиш одреден корисник на сите ПХП страни дали е логиран или не.
Тоа ти е минимум.

А понатаму тоа може да се прошири на дозволени права на корисникот, додавање и бришење на корисниците итн.


Инаку за тебе најдобро е да си користиш
.htaccess / .htpasswd комбинација и да му ја препуштиш заштитата на одреден фолдер на Apache серверот.

Еве ти пример .htaccess
-------------------------------------------------
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /home/webuser/.htpasswd
require valid-user
-------------------------------------------------

болдираното е апсолутна патека на web serverot.


.htpasswd генератор ќе го направиш рачно или со пхп или со некоја веб страница што ќе ти генерира.

Еве ти пример на php фајл што ќе ти генерира .htaccess / .htpasswd.

<?php

$user = 'teneke';
$pass = 'tenekepass';

$filename = '.htaccess';
$fpw = fopen( $filename, 'wt' );
fwrite( $fpw, "AuthType Basic\n");
fwrite( $fpw, 'AuthName "Restricted Area"'."\n");
fwrite( $fpw, 'AuthUserFile "/home/webuser/.htpasswd"'."\n");
fwrite( $fpw, "require valid-user\n");
fclose( $fpw );

$filename = '.htpasswd';
$fpw = fopen( $filename, 'wt' );
$pass1 = crypt($pass);
fwrite($fpw, "$user:$pass1\n");
fclose( $fpw );

?>
 
1. adminisstration.html треба да ти е php фајл
2. во логин страната пред да го префрлиш на админ страната стави го ова:

$_SESSION["ime_na_sesija"]=nekoja_vrednost; //primer id na user

а во првиот ред од кодот стави:

session_start();

3. во adminisstration.php ( и во сите други поврзани фајлови што не сакаш да ти бидат достапни директно преку урл ) во првите редови стави го следново:

session_start();
if(!isset($_SESSION["ime_na_sesija"]))
header("location:../index.php"); // локација до логин или друга надворешна страна
 
Дали некој работел со кеширање во пхп? Излез од база да кешира за одреде временски период или па со тригери кои ќе известуваат кога има нови записи за да се освежи кешот.
 
Дали некој работел со кеширање во пхп? Излез од база да кешира за одреде временски период или па со тригери кои ќе известуваат кога има нови записи за да се освежи кешот.
Јок. Имав сличен проблем. На крај после многу мачење завршив со правење на нова табела која ќе ми ја полни директно MsSql (со тригери)

п.с. Работев со MsSQL база

п.с2: пробај да запишваш во едноставен text фајл. Тоа би забрзало.... делумно
 
Јок. Имав сличен проблем. На крај после многу мачење завршив со правење на нова табела која ќе ми ја полни директно MsSql (со тригери)

п.с. Работев со MsSQL база

п.с2: пробај да запишваш во едноставен text фајл. Тоа би забрзало.... делумно
И јас така мислев нешто да импровизирам. Работев софтвер (нешто досиеа за лица, па пребарување принтање групи итн...) ама напраив мал пропуст што при вклучување ги чита сите записи и прикажува (тоа се лица ги има околу 200 моментално но мислам ќе полнат уште), не очекував дека ќе се толку многу па не вметнав пејџирање и сега барам некој алтернативен начин да не копа по база на секое повикување туку да ги исчита од некое место без оптеретување, или па да праам пејџирање ама ме мрзи.

Ај ќе видам, ако дотераат до 500 записи ќе барам решение
 
... или па да праам пејџирање ама ме мрзи.

Ова ти е полесно и побрзо решение отколку да имплементираш кеширање каде што ќе треба да се грижиш за тоа кои делови да бидат кеширани (пр. да не се кешира "Најавен како deXterche", па да се прикажува истото за сите корисници).. ако сакаш да се занимаваш, треба да си играш со output buffer-от. Мислам дека ги имаше на php.net убаво објаснето функциите.

edit: Еве. Ѕирни и некој од примерите кои излегуваат како резултати на Google.. (скоро) сите работат на ист принцип:
- ако постои кеширана копија од страницата и е стара помалку од Х секунди, прикажи ја неа;
- ако не, кеширај ја и прикажи ја
 
Ова ти е полесно и побрзо решение отколку да имплементираш кеширање каде што ќе треба да се грижиш за тоа кои делови да бидат кеширани (пр. да не се кешира "Најавен како deXterche", па да се прикажува истото за сите корисници).. ако сакаш да се занимаваш, треба да си играш со output buffer-от. Мислам дека ги имаше на php.net убаво објаснето функциите.

edit: Еве. Ѕирни и некој од примерите кои излегуваат како резултати на Google.. (скоро) сите работат на ист принцип:
- ако постои кеширана копија од страницата и е стара помалку од Х секунди, прикажи ја неа;
- ако не, кеширај ја и прикажи ја
Не планирам до крајности да одам се комплет да кеширам, доволно ќе ми е ударната листа да ја кешираm па во табела да оставам тригер што ќе проверува дали има апдејт од последната посета за да ја освежи. Или па еден најпрост лимит да стаам до 50 корисници, ај да видам уште колку ќе полнат па ќе му ја мислам, мада и 200 корисници не е мал број иако не се осеќа воопшто на перформанси, мене ми е шубе :)
 
Не планирам до крајности да одам се комплет да кеширам, доволно ќе ми е ударната листа да ја кешираm па во табела да оставам тригер што ќе проверува дали има апдејт од последната посета за да ја освежи. Или па еден најпрост лимит да стаам до 50 корисници, ај да видам уште колку ќе полнат па ќе му ја мислам, мада и 200 корисници не е мал број иако не се осеќа воопшто на перформанси, мене ми е шубе :)
Колку квериња се извршуваат за тие 200 корисници при едно вчитување? И од колку табели ги влечиш податоците?
 
Колку квериња се извршуваат за тие 200 корисници при едно вчитување? И од колку табели ги влечиш податоците?
Едно квери е, црпи од 4 табели податоци. Но сепак приказ на 200+ податоци во еден упит е многу.
Значи прави конекција, зема што му треба и затвара. Следев оптеретеност на процесор, воопшто не реагира што ме радува :)
 

Kajgana Shop

Back
На врв Bottom