Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]Skrypt logowania
K4mil94
post
Post #1





Grupa: Zarejestrowani
Postów: 302
Pomógł: 18
Dołączył: 10.03.2008
Skąd: Dębno

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


Witam.. Po przeczytaniu pewnego poradnika wziałem się za napisanie skryptu. Ma on pewien błąd otóż:
W każdej podstronie jest błąd
Kod
[b]Warning[/b]:  session_start() [[url="http://simsnews.pl/test/function.session-start"]function.session-start[/url]]: Cannot send session cookie - headers already sent by (output started at /home/ibanez/domains/simsnews.pl/public_html/test/funkcje.php:160) in [b]/home/ibanez/domains/simsnews.pl/public_html/test/omnie.php[/b] on line [b]5[/b]

[b]Warning[/b]:  session_start() [[url="http://simsnews.pl/test/function.session-start"]function.session-start[/url]]: Cannot send session cache limiter - headers already sent (output started at /home/ibanez/domains/simsnews.pl/public_html/test/funkcje.php:160) in [b]/home/ibanez/domains/simsnews.pl/public_html/test/omnie.php[/b] on line [b]5
[/b]I taki sam do plików: index.php, uzytkownicy.php, omnie.php, rejestracja.php.

A tutaj kody:

Index.php
Kod
<?php
//wczytanie pliku z funkcjami
  require_once ("funkcje.php");
  //rozpoczęcie sesji
session_start();
  //formularz logowania
  wy_form_logo();
?>

Funkcje.php
Kod
<?php

function pol_mysql()
{


//ustawiamy teraz dane naszej bazy
$db_host = 'localhost';
$db_user = 'ibanez_simsnews';
$db_pass = '********';
$db_name = 'ibanez_simsnews';

//ustawiamy polączenie z bazą danych
$lacz = mysql_pconnect($db_host, $db_user, $db_pass);
    if(!$lacz)
    {
     echo "Wystąpił błąd: Połączenie z bazą nie powiodło się.";
     exit;  }

//wybieramy bazę
if(!@mysql_select_db($db_name, $lacz)) {
echo '<b>Baza danych chwilowo niedostepna. Przepraszamy.</b>';
exit;   }

}

function wynik_db_do_tablicy($wynik)
{
  $tablica_wyn=array();

  for($licznik=0; $rzad=@mysql_fetch_array($wynik); $licznik++)
    $tablica_wyn[$licznik]=$rzad;

  return $tablica_wyn;
}

function html_url($url, $nazwa)
{
  // wyświetlenie URL-a jako łącza
?>
  <P align="center">
  <a href="<?=$url?>"><?=$nazwa?></a>
  </P>
<?
}

//wyswietla nam pole do zalogowania się, bądź rejestracji;)
function wy_form_logo()
{
?>
  <form method=post action="uzytkownicy.php?m=log">
  <TABLE ALIGN="center">
   <tr>
   <td><b>Login:</b></td>
     <td><input type=text name="login"></td>
     <td><b>Hasło:</b></td>
     <td><INPUT type=password name="haslo"></td>
     <td align=center colspan=2>
     <INPUT TYPE="SUBMIT" VALUE="Zaloguj"></td>
     <td><a href="uzytkownicy.php?m=rejestracja">Rejestracja</a></td>
     </tr>
</table></form>

<?
}
// formularz rejestracji
function dodaj_form()
{
?>
  <form method=post action="rejestracja.php">
  <TABLE ALIGN="center">
   <tr>
     <td colspan=2><H1>Dodanie nowego użytkownika</H1><TD></TD></td>
   <tr>
     <td>Login:</td>
     <td><input type=text name=login></td></tr>
   <tr>
     <td>Numer Gadu-Gadu:</td>
     <td><input type=text name=gg></td></tr>
   <tr>
     <td>Skšd jesteœ:</td>
     <td><input type=tekst name=skad></td></tr>
   <tr>
     <td>Płeć:</td>
     <td>Mężczyzna: <input type="radio" value="m" checked name="plec"> Kobieta: <input type="radio" name="plec" value="k"></td></tr>
   <tr>
     <td>Hasło:</td>
     <td><input type=password name=haslo></td></tr>
   <tr>
     <td>Powtórz hasło:</td>
        <td><input type=password name=haslo2></td></tr>
   <tr><td colspan=2><h4>Hasło powinno składać się z  nie więcej niż 12 znaków.</H4></td></TR>
   <tr>
     <td align=center colspan=2>
     <input type=submit value="Zapisz"></td></TABLE></form>
<?
      html_url("index.php", "Logowanie");
}
//dodajemy użytkownika do bazy danych
function dodaj_usera($login, $gg, $skad, $plec, $haslo, $haslo2)
{
    if ($haslo != $haslo2)
    {
        echo "<H3 ALIGN=center>Hasła nie są takie same.</h3>";
        dodaj_form();
        exit;
    }
  $polaczenie= pol_mysql();
  // sprawdzenie, czy login nie powtarza się
  $wynik = mysql_query("select * from users where login='$login'");
  if(!$wynik)
    return "Problem: zapytanie z bazy nieudane";
  if (mysql_num_rows($wynik)>0)
    {
    echo "<H3 ALIGN=center>Użytkownik o takiej nazwie jest już zarejestrowany, spróbuj inny login</h3>";
    dodaj_form();
    }
  $czas = date("j-m-Y-G:i:s");
  // umieszczenie usera w bazie danych
  $zapytanie = "insert into users values
                 ('', '$login', '$gg', '$skad', '$plec', '$haslo', '$czas')";
  $wynik=mysql_query($zapytanie);
if($wynik)
    {
    echo "<H3 ALIGN=center>Rejestracja zakończona pomyœlnie</h3>";
    echo "<H4 ALIGN=center><a href='index.php'>Strona Logowania</a></h4>";
    exit;
    }
  return true;
}

function logowanie($login, $haslo)
{
  $polaczenie= pol_mysql();
  // sprawdzenie, czy login nie powtarza się
  $wynik = mysql_query("select * from users where login='$login'");
  if(!$wynik)
    return "Problem: zapytanie z bazy nieudane";
  if (mysql_num_rows($wynik)== 0)
    {
    echo "<H3 ALIGN=center>Niema takiego użytkownika w bazie danych</h3>";
    wy_form_logo();
    exit;
    }
  $tab_user = wynik_db_do_tablicy($wynik);
  if ($tab_user[0]['haslo'] != $haslo)
    {
      echo "<H3 ALIGN=center>Niepoprawne hasło</h3>";
    wy_form_logo();
    exit;
    }
   $user = $login;
   //rejestrowanie danych sesji
   session_register("user");
   echo "zalogowany jako: <b>" .$user."</b>, jesteœ z <b>".$tab_user[0]['skad']."</b>, data twojej rejestracji to: <b>".$tab_user[0]['data']."</b><br>";
   echo "<a href=omnie.php>Strona o mnie</a>";

}
?>

uzytkownicy.php
Kod
<?
//wczytanie pliku z funkcjami
  require_once ("funkcje.php");
//rozpoczęcie sesji
session_start();
//kod PHP
  if ($_GET['m'] == 'rejestracja')
  dodaj_form();
  if ($_GET['m'] == 'log')
  logowanie($login, $haslo);
  ?>

omnie.php
Kod
<?php
//wczytanie pliku z funkcjami
  require_once ("funkcje.php");
//rozpoczęcie sesji
session_start();
//kod PHP
if (session_is_registered("user"))
{
echo "Może posłużyć jako menu, czy coś innego;)";
echo "<br><A HREF=wyloguj.php>Wyloguj</a>";
}
else
{
echo "<H3 ALIGN=center>Nie masz uprawnień do korzystania z tej strony! Wróc i się zaloguj</h3>";
html_url("index.php", "Logowanie");
exit;
}
?>

PS. Jak wchodze w omnie.php to mi niszczy sesje nie wiem dlaczego ;/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
K4mil94
post
Post #2





Grupa: Zarejestrowani
Postów: 302
Pomógł: 18
Dołączył: 10.03.2008
Skąd: Dębno

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


Uczyłem się PHP i już coś umiem ale nie znam wszystkich jego możliwości. Większość nauczyłem się właśnie z przerabiania takich skryptów. Dlatego szukam tak owego poradnika.. Nie wiem czy dobrze myślę ale mam taki skrypt downloadu... Można by go przerobić tak aby dodawać swój profil na podstawie dodawania plików ? (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Jeszcze interesuje mnie coś z innej paki.. Jak zrobić aby załadować do Textarea Plik php. Czyli coś jak w WebText Evolution. Potrzebuję bo chce napisać panel zarządzania stroną
Go to the top of the page
+Quote Post

Posty w temacie
- K4mil94   [PHP][MYSQL]Skrypt logowania   3.10.2008, 17:29:22
- - byqu   [PHP] pobierz, plaintext <?phpsession_start...   3.10.2008, 17:34:13
- - K4mil94   Dzięki pomogło ) A to ? Jak wchodze w o...   3.10.2008, 17:38:40
- - Lejto   użyj mod_rewrite   3.10.2008, 17:49:35
- - K4mil94   Ale chodzi mi o zrobienie w ogóle czegoś taki...   3.10.2008, 17:56:30
- - Piniek   w bazie danych trzymasz dane do profilu, potem dy...   3.10.2008, 18:04:14
- - K4mil94   Z tego co rozumiem to każdy user ma mieć swoją tab...   3.10.2008, 18:10:27
- - Piniek   nie kazdy osobną tabelę a osobny "rekord...   3.10.2008, 18:13:43
- - K4mil94   Byłby do tego poradnik jakiś ? bo nie zabardzo to ...   3.10.2008, 18:20:03
- - Piniek   wątpię, jak chcesz to zrobić pożądanie to naucz s...   3.10.2008, 18:22:40
- - K4mil94   Uczyłem się PHP i już coś umiem ale nie znam wszys...   3.10.2008, 18:31:42
- - Lion_87   CytatNie wiem czy dobrze myślę ale mam taki skrypt...   3.10.2008, 19:02:49
- - K4mil94   Dobra. Pomyślałem nad tym i wywnioskowałem żeby do...   4.10.2008, 07:18:23
- - Piniek   podałem ci zapytanie do bazy kilka postów wyżej. P...   4.10.2008, 07:20:12
- - K4mil94   Właśnie napisałem sobie listę ...   4.10.2008, 07:47:46
- - Lion_87   Ale Piniek napisal CI jak ma wygladac zapytanie ?...   4.10.2008, 08:13:24
- - K4mil94   A jak definiować id każdego usera ?   4.10.2008, 08:18:52
- - Lion_87   no np przez mała zmiane w Twoim skrypcie wyzej [P...   4.10.2008, 08:37:23
- - K4mil94   A jak zrobić zeby samo czytało z bazy id i odrazu ...   4.10.2008, 09:26:55
- - Lion_87   O co Ci kaman bo juz nie wiem?   4.10.2008, 14:15:23
- - K4mil94   1. Chcę mieć żeby każdy użytkownik miał swój profi...   4.10.2008, 14:32:09
- - Lion_87   id=$login_id To jest unikalne id każdego use...   4.10.2008, 14:49:18
- - K4mil94   Coś takiego ? [PHP] pobierz, plaintext <?s...   4.10.2008, 15:06:41
- - Lion_87   Całosc? do textarea? po co? Oddzielnie w inpu...   4.10.2008, 16:20:38
- - K4mil94   ale np mam blog. czyli jakas dłuższa wypowiedz pas...   4.10.2008, 16:51:09
- - Lion_87   to wtedy [PHP] pobierz, plaintext <?php<for...   4.10.2008, 17:14:11
- - K4mil94   Teraz następny problem. Nie rejestruje mi ludzi fu...   4.10.2008, 17:27:29
- - Lion_87   Cytat$zapytanie = "insert into users val...   4.10.2008, 17:31:29
- - K4mil94   Nic nie dało ;/ Tylko błąd w 3 lini w pliku rejest...   4.10.2008, 17:35:50
- - -dr_NO-   jeżęli pierwsze pole to jest id, i masz ustawione ...   4.10.2008, 19:13:53
- - K4mil94   Właśnie spróbowałem tak po napisaniu posta, ale te...   4.10.2008, 19:40:10
- - Gość   Jeżeli chodzi o błędy: [PHP] pobierz, plaintext ...   4.10.2008, 19:56:29
- - K4mil94   Array ( [login] => volume [gg] => 10977417 [...   5.10.2008, 07:24:44
- - Lion_87   hmmm a napewno dobrze sie z baza lączysz? dob...   5.10.2008, 09:55:13
|- - K4mil94   Cytat(Lion_87 @ 5.10.2008, 10:55:13 )...   11.10.2008, 09:09:49
- - MWL   Lion_87, najpierw niech to się przefiltruje za pom...   5.10.2008, 09:56:47
- - Lion_87   Moze pokaz nam tabele w MySQL do której chcesz zar...   11.10.2008, 12:58:26


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 Aktualny czas: 12.10.2025 - 01:43