Mine sisusse
Otsi siit
  • Rohkem valikuid...
Otsi tulemusi mis sisaldab...
Otsi tulemusi...

Soovitatud postitused

Tervist, kuna alles õpin PHP-d siis ei saa ma paarist asjast aru, nimelt kui registreerimise skript on järgmine, mis on allpool toodud siis mis asi seal näitab, et kuhu tabelisse phpmyadminis see salvestub? Mina loll tegin phpmyadminisse tabeli nimega kasutajad ja panin panin sinna järgmised read: kasutajanimi, parool ja parool2. Hetkel ei salvestu midagi ja kui registreerun kasutaja ära siis saan uuesti sellenimega teha jne. Seletage palun mis ma peaks muutam, et registreerimine toimiks. Skript pole minu kirjutatud ja kõik õigused kuuluvad Savilaarile.

 

 

/**
* @author Savilaar
* @copyright 2011
* Skripti kasutamine on niikaua lubatud kuni nimi savilaar on märgitud.
*/

// Ühendame MySQLiga
$host     = '****';
$username = '*****';
$password = '*****';
$database = '*****';

mysql_connect($host,$username,$password);
mysql_select_db($database);

if ( isset($_POST['regcheck']) ) {
   $kasutajanimi = strip_tags($_POST['kasutajanimi']);
   $pass = strip_tags($_POST['parool']);
   $pass2 = strip_tags($_POST['parool2']);

 $unc_query = mysql_query("SELECT * FROM players WHERE name = '".$kasutajanimi."'");
   $unc_rows = mysql_num_rows($unc_query);

   if ( $unc_rows > 0 ) {
       echo 'Selline kasutajanimi on juba kasutusel
';
   }
   elseif ( empty($kasutajanimi) ) {
       echo 'Kasutajanime sisestamine on kohustuslik
';
   }
   elseif ( strlen($kasutajanimi) > 30 ) {
       echo 'Kasutajanime maksimaalne pikkus on 30 tähemärki
';
   }
   elseif ( empty($pass) ) {
       echo 'Parooli sisestamine on kohustuslik
';
   }
   elseif ( !$pass == $pass2 ) {
       echo 'Paroolid ei kattu
';
   }
   else {
       echo 'Oled registreeritud!';
       mysql_query("INSERT INTO players ('name','age','password') VALUES ('".$kasutajanimi."','".$pass."')");
   }
}

echo '</pre><form method="post" action="?">';
echo '';
echo 'Kasutajanimi:';
echo 'Parool';
echo 'Korda parooli';
echo '';
echo '';
echo '';
echo '</form>';<br

Muudetud liikme Valdek'i poolt

Jaga seda postitust


Postituse link
Share on other sites

Registreerumise lõpp on järgmine.

mysql_query("INSERT INTO players ('name','age','password') VALUES ('".$kasutajanimi."','".$pass."')");

 

Tabel players, lahtrid: name, age, password.

 

pane kasutaja lisamine nii:

 

mysql_query("INSERT INTO players ('name','age','password') VALUES ('".$kasutajanimi."','".$pass."')") OR die("Viga:" . mysql_error() );

 

Vaata mis vea annab.. Viga on selles, et sa tegid tabeli kasutajad, kuid on vaja tabel players.

Muudetud liikme paksmatu'i poolt

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas (muudetud)

Tegin nii nagu toru-loru kirjutas, aga nüüd tuli hoopis sihukene asi:

Oled registreeritud!Viga:Column count doesn't match value count at row 1

Mis peaks tegema?

 

 

Edit///

Nagu aru saan, on seal kirjas et tabeli read ei vasta php skriptis välja toodud ridade arvuga?

Tegin siis ka pilti mysql andmebaasist, kus on toodud välja tabel ja selle read. Vahetasin players-i kasutajad-eks, kuna mul on juba üks players seal olemas ja too on vajalik muuks asjaks.

Pilt tabelist:

phpv2lk.JPG

phpv2lk.JPG

Muudetud liikme Valdek'i poolt

Jaga seda postitust


Postituse link
Share on other sites

mysql_query("INSERT INTO players (name , age , password ) VALUES ('".$kasutajanimi."','".$pass."')") OR die("Viga:" . mysql_error() );

 

Sul on esimeses "name", "age", "password", väärtuste seas on: $kasutajanimi, $pass. Vahelt on jäänud ära $vanus

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas
Oled registreeritud!Viga:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'test'')' at line 1

Tegin nii nagu paksmatu ütles. Äkki on hoopis midagi muud viga, kas selles ei saa viga olla? Ise ei saa midagi aru ja ei hakka muud ka tegema, enne kui see korras on. Mis ma nüüd küll tegema peaks?

Jaga seda postitust


Postituse link
Share on other sites

Tihtipeale on need vead juba rutiinid. Nimelt on siis süntaksiviga.

 

mysql_query("INSERT INTO players (name, age, password) VALUES ('".$kasutajanimi."', '5', '".$pass."') ") OR die("Viga:" . mysql_error() );

 

Nii peaks nüüd töötama.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Suured tänud paksmatu, töötas ja nüüd salvestab ära, aga üks küsimus veel, seal on see passwordi koht eksole ja praegu annab seal sõnadega selle parooli, aga kuidas nii saada, et parooli kuvaks tabelis umbes sellises stiilis?: 43361bbb2f630cb7ce2cb7a8424bbd3a. Hetkel annab seal sõnadega. Mis ma peaksin tabelis muutma?

Jaga seda postitust


Postituse link
Share on other sites
SUPERVIP
Kasuta mingit krüpteerimist ennem baasi salvestamist, näiteks md5()

 

$parol=md5($parol);

 

veel turvalisem oleks näiteks sha512

 

$parool = $_POST['parool'];
$viimanepass = hash('sha512', '$parool');

ja siis paned et mysqli lisab $viimanepass

ja samuti loginisse teed sama värgi ja paned kontrollima et kui mõlemad sha512 crypteeringud on samad siis logib sisse.

 

toon mõned näited miks sha512 kõvasti turvalisem

 

võtame sõna "kukk" ja cryyptime selle md5 vs sha512

 

sha512:

cb197167a522649e45ac790178332401080e2d22c7279e78e9b95a24ea5d2054f877e0c8d8edd4ba452b470ecbcc8862472bcfdb0fd9c58abf39f7fa61efdd0a

 

md5:

6302c138c4a7af0addb3fd29a4f20af0[code]

 

nagu näha siis sha512 on palju pikkem seega turvalisem? :D


no pain, no gain

no work, no results

Jaga seda postitust


Postituse link
Share on other sites

Pikkus EI näita kui turvaline see on. Võib olla ka 100 lehte, kuid alati see 100 lehte ei pruugi korras olla.

 

Säti need pass ja pass2 muutujad järgnevalt, siis ei pea kolmandat muutujat tegema.

$pass = md5($_POST['parool']);

$pass2 =md5($_POST['parool2']);

Muudetud liikme paksmatu'i poolt

Jaga seda postitust


Postituse link
Share on other sites

Kommentaari lisamiseks loo konto või logi sisse

Kommenteerimiseks peate olema liige

Loo konto

Liituge meie kommuuni uue kontoga. See on lihtne!

Loo uus konto

Logi sisse

On juba konto? Logi sisse siit.

Logi sisse nüüd

×
×
  • Loo uus...

Oluline informatsioon

Selle veebisaidi paremaks muutmiseks oleme teie seadmesse paigutanud küpsised . Võite kohandada oma küpsiste seadeid , vastasel juhul eeldame, et te olete küpsiste kasutamisega nõus kui jätkate veebisaidil sirvimist.. Palun lugege läbi Kasutustingimused ja Privaatsuspoliitika.