Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP+SQL] CMS by marcio, Moze sie uda :)
marcio
post 26.02.2008, 15:42:35
Post #1





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Witam postanowilem napisac cms'a i chcialbym w tym temacie zamieszczac moje problemy zamiast robic 5 tematow pod rzad tak jak to czasami sie zdarza a wiec jak narazie mam gotowa rejestracje oczywiscie nie smiejcie sie z kodu dzialac dziala lecz nie wiem czy jest bezpieczna ale mam pytanie na local'u nie dziala mi funkcja mail bo nie mam serv'a smtp i pop3(o ile sie nie myle to to jest wlasnie przyczyna) i nie mam jak sprawdzic i nie wiem czy dobrze aktywuje konto mam takie cos:
  1. <?php
  2. $query1 = ('select * from users where code = "'.$active.'" AND login = "'.$login.'"');
  3.  $wynik1 = mysql_query($query1, $db);
  4. $tab = mysql_fetch_assoc($wynik1);
  5.  
  6. if($tab['code'] == $hash) $aktywuj = mysql_query('update users set active = 1 where code = "'.$active.'"');
  7.  
  8. if(mysql_affected_rows($aktywuj) == 1) echo('<script>alert("Konto zostalo aktywowane");');
  9. ?>

Tabela nazywa sie users a kolumny to
id
login
haslo
lvl
email
gg
code
active
ip
I mam jeszcze jedno pytanie zanim zaczne robic logowanie jak proponujecie je zrobic bo nie spotkalem sie z takim pytanie z odpowiedzia na nie(oczywiscie uzylem funckji szukaj mozliwe ze cos przeoczylem)
Ogolnie dylemat polega na tym zeby przy logowaniu sprawdzac jakie user ma prawa gdy lvl == 1 to przekierowywuje na strne user.php a jak lvl == 2 to admin.php
LUB
Przy logowaniu do sesji przypisuje prawa i przed wejscie na tajna strone czy na strone dla admina albo przed wykonaniem jakiejs czynnosci ktorej zwygly user nie moze wykonwac patrze czy zmienna sesyjna jest rowna 2 a jak nie to komunikat

Jaki pomysl wedlug was lepszy ogolnie to chyba w wiekszosci przypadkow uzywa sie 2 metoda ale mysle ze 1 jest latwiejsza

Ok juz zrobile jednak teraz mam nowe pytanie jak wsywietlic user'ow online jako ze cms'a chce napisac sam to wole nie szukac gotowych rozwiazan na forum chodz szukalem ale bez rezultatow i mysle zeby to tak zrobic:
Do tabeli users dodac pole online z domysla wartoscia no i przy logowaniu robie update na ta kolumne i daje yes i a przy wylogowywaniu ustawic znowu na no

P.S czy moze tak byc??


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
Grzyw
post 26.02.2008, 15:53:44
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Książkę napisałeś na forum:)

Tak, na localhost nie masz serwera pocztowego, dlatego nie sprawdzisz mail().

Co do listy online - a jak zmusisz usera do wylogowania się? Odpada taki manewr. Rób update pola lastSeen czy ostatnioAktywny wpisując tam datę i godzinę /timestamp/ ostatniego przeklikania strony przez usera, przy każdym jego kliknięciu. A wyświetlaj tych userów, których data ostatniego kliknięcia jest np. 3 minuty "starsza" od daty obecnej.

Co do przekierowania admina - w sumie to wszystko jedno, przecież i tak po przekierowaniu musisz sprawdzić, czy user jest adminem. Wrzuć to sobie w sesję, będziesz mniej razy musiał grzebać w bazie.


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
cytrysek
post 26.02.2008, 16:58:53
Post #3





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 4.01.2008

Ostrzeżenie: (0%)
-----


Cytat(Grzyw @ 26.02.2008, 15:53:44 ) *
Książkę napisałeś na forum:)

Tak, na localhost nie masz serwera pocztowego, dlatego nie sprawdzisz mail().


Nie do końca się z tym zgodzę.
Wystarczy zainstalować kobyłę pt. XAMPP i włączyć oprócz Apacha serwer poczty "Mercury"
Ja osobiście testuję i wsio gra.

Pozdrawiam.
PW
Go to the top of the page
+Quote Post
marcio
post 27.02.2008, 16:38:45
Post #4





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Ogolnie to napisalem czemu mail() nie dziala

@Grzyw juz rejestracja jest logowanie tez na sesjach nawet mi dobrze idzie tongue.gif

Witam mam takie cos
  1. <?php
  2. function online($user) {
  3.  
  4. if($db = mysql_connect("localhost", "root", "******")) {
  5.  
  6. $remote = $_SERVER['REMOTE_ADDR'];
  7.  $aktualny_czas = time();
  8. $limit = 300; 
  9.  $zostalo = $aktualny_czas - $limit;
  10. $dodaj = ("INSERT INTO online(login,czas,ip) VALUES('$aktualny_czas','$user','$remote')");
  11.  $rezultat = mysql_query($dodaj, $db) or die(mysql_error());
  12. $usun = mysql_query('DELETE FROM online WHERE czas < '.$zostalo.''); 
  13.  $usunieto = mysql_query($usun, $db);
  14. $ile_online = ('select * from online where login = "'.$user.'"');
  15.  $osob = mysql_query($ile_online, $db) or die(mysql_error());
  16. $licz = mysql_num_rows($osob);
  17. echo('User'ow online: '.$licz.' ');
  18.  }
  19. }
  20. ?>

Wywoluje:
  1. <?php
  2. online($_SESSION['name']);
  3. ?>

Dlaczego pokazuje mi zawsze ze jest 0 user'ow jak narazie funckje odpalam tylko na index 2o user'ami na localu ale jest zawsze 0

P.S w bazie do kolumn mi sie nic nie zapisuje tylko pisze ze nadmiar 20kb
Struktura tabeli online
login varchar(15)
czas int(15)
ip varchar(16)
I index primary na login

Co robie zle??

To jak pomoze ktos??

Ok dziala

Ten post edytował marcio 27.02.2008, 16:15:17


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
dawik
post 27.02.2008, 16:46:40
Post #5





Grupa: Zarejestrowani
Postów: 43
Pomógł: 1
Dołączył: 25.02.2008

Ostrzeżenie: (20%)
X----


<?php
include ('config.php');

$ilosc = count(glob("$folderaccount*.*"));
?>

<?

print '<div style="font-size: 11;"><b>';
print 'Ilość kont';
print ':</b> <br>';
print $ilosc;
?>

Tutaj masz coś co pokazuje ile masz plików w folderze. Czyli będzie ile kont;)
Go to the top of the page
+Quote Post
marcio
post 27.02.2008, 20:50:56
Post #6





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Witam mam jeszcze jedno pytanko bo narazie nie mam jak sprawdzic aktywacji mail'a moje pytanie brzmi: Jesli wysylam email'a to mam podac sciezke(url) do rejestracji czyli tam gdzie sprawdzam czy zostal wyslany kod i czy sie zgadza??


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
Sabistik
post 27.02.2008, 21:21:02
Post #7


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Tytuł tematu nie spełnia wymagań regulaminu działu przedszkole. Zamykam. Na PW czekam na poprawna formę - po tym temat zostanie otwarty.

To twoje kolejne upomnienie.
Go to the top of the page
+Quote Post
marcio
post 1.03.2008, 00:17:22
Post #8





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


@Sabistik dzieki za otwarcie tematu



Czesc mam nadzieje ze ktos bedzie umial mi pomoc mam takie pytanie powiedzmy robie sobie system art'ow jest on juz gotowy wszystko sie dodaje potem mam strone ktora sie nazywa art.php na ktorej wyswietlam tytul|opis arta|data dodania|autora i po kliknieciu na dany art chcialbym zeby przeszlo tak jakby do nastepnej podsrony czyli po jego kliknieciu strona z artami znika i pojawia sie tresc arta czy ktos wie jak takie cos zrobi moze to jest latwe ale moj mozg o tej godz. nie funkcjonuje

P.S tak wyglada link do art:
  1. <?php
  2. echo('<a href="?strona='.$strona.'&action=pokaz&id='.$dane['id'].'&autor='.$dane['autor'].'"><h2>'.$dane['tytul'].'</h2></a>');
  3. ?>


Ten post edytował marcio 1.03.2008, 00:18:58


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
bl4ck_b0x
post 1.03.2008, 16:33:31
Post #9





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 21.11.2006

Ostrzeżenie: (0%)
-----


po co w linku pobierasz autora?winksmiley.jpg Wydaje mi sie ze wystarczyloby zebys pobieral tresc po ID a nastepnie sprawdzal cos takiego:

  1. <?
  2. //jakis kod
  3. $id=intval($_GET['id']);
  4. if($_GET['id'])
  5. {
  6.  //zapytanie do pobrania rekordow z bazy, WHERE id=$id
  7. }
  8. else
  9. {
  10.  //pobierz liste artykulow ;)
  11. }
  12. ?>
Go to the top of the page
+Quote Post
marcio
post 1.03.2008, 18:27:32
Post #10





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


EDIT:No problem juz zrobionie tongue.gif

Ten post edytował marcio 1.03.2008, 18:53:10


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 05:27