MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 Aiz } vajag likt ; ? nu piem if(empty($lvards) OR empty($parole) OR empty($epasts)) { echo "Lūdzu aizpildiet visus nepieciešamos lauciņus."; }; beigās vajag (;) vai nē?
MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 (edited) Un izmanto to šādi: $query = sprintf("INSERT INTO users (un,psw,regip,regtime,refid) VALUES (%s,%s,%s,now(),%s);", quote_smart($un), quote_smart($psw), quote_smart($_SERVER['REMOTE_ADDR']), quote_smart($refid)); $result = mysql_query($query) or die('Query failed: ' . mysql_error()); Kods pēc pārakstīšanas Noteikti kaut kur esmu pieļāvis kļūdu, bet nevaru to atrast You have an error in your SQL syntax googlē paskatijos, bet nevienu kārtīgu atbildi neatradu Edited November 17, 2007 by MārisL
andrisp Posted November 17, 2007 Report Posted November 17, 2007 Tev tajā kodā vēl aizvien loģiskās kļūdas. Uzreiz ar 47. rindiņas ieliec echo $query; un apskaties, kas tiek izvadīts. Ja neredzi, kur kļūda, tad iemet šeit, mēs apskatīsim.
MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 Tur jau tā lieta, ka man viņš pat līdz query neaiziet, jo uzspiežot 'Reģistrēties' man izlec Query failed: 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 '@inbox.lv, Māris, Rīga, http;//manalapa, )' at line 1
andrisp Posted November 17, 2007 Report Posted November 17, 2007 ā, nujā tev tur ir die(). Bet nu es jau redzu kur problēma. Kverijā liekot stringus, tie ir jāievieto iekš pēdiņām.
MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 andrisp - nevari pārādīt, kur tieši jāliek tās pēdiņas? :( Tiešām esmu apjucis
Val Posted November 17, 2007 Report Posted November 17, 2007 $sql = "INSERT INTO lietotaji (lietotajvards, parole, epasts, vards, dzivesvieta, majaslapa, ip) VALUES ('$lietotajvards', '$parole', '$epasts', '$vards', '$dzivesvieta', '$majaslapa', '$ip')";
MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 (edited) Jēēē (party) beidzot skripts strādā, bet kā vienmēr ir viena problēma. Ip neparādas kolonas querty : INSERT INTO lietotaji (lietotajvards, parole, epasts, vards, dzivesvieta, majaslapa, ip) VALUES ('Yugis', 'mana_parole', 'gonzoandjon@inbox.lv', 'Maris', 'Rīga', 'http://manalapa', '');Paldies jums par reģistrēšanos. Tagad jums ir iespēja ielogoties. Un vēl. Kā būtu iespējams izveidot, lai uz manu db sūtas nevis tīras paroles, bet gan skaitļu un burtu kopums? Privātums svarīgs :) http://paste.php.lv/6419 Edited November 17, 2007 by MārisL
Val Posted November 17, 2007 Report Posted November 17, 2007 kādēļ tev vajadzīga šī rinda? $ip = $_POST['ip'];
MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 O, paldies:) Bet par to paroli? Kā izveidot, lai es dn neredzu lietotāju paroli, bet gan ķeburus (burtus un ciparus)
Val Posted November 17, 2007 Report Posted November 17, 2007 http://phpsec.org/articles/2005/password-hashing.html
Kavacky Posted November 17, 2007 Report Posted November 17, 2007 Burti un cipari parasti _nav_ ķeburi ;) Funkcija md5().
MārisL Posted November 17, 2007 Author Report Posted November 17, 2007 Tāk. Parole sataisīta, bet ir tagad mēģinu izveidot, ka lietotājvārds nedrīkst būt garāks par 30 simboliem. http://paste.php.lv/6420 Kods it kā. Kad mēģinu reģistrēt niku, kas garāks par 30 simboliem, tā izlec kļūda par to, ka lietotājvārds nedrīkst būt garāks par 30 simboliem (viss kā vajag), bet tieši aiz viņa ir paziņojums par to, ka lietotājs ir reģistrējies. ( Datubāzē ar viņš parādas ar visu garo lvārdu) Tātad, kā būtu iespējams izveidot tā, ka parādot šo kļūda cilvēks netiktu piereģistrēts
bubu Posted November 17, 2007 Report Posted November 17, 2007 if (lauki_aizpildīti && garums_ir_zem_30) { //reģistrējam lietotāju // ... echo "viss OK"; } else { // nereģistrējam echo "Nečakarē te mani, par garu tev garums!"; }
Recommended Posts