Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
25.09.2007 18:35:38
|
|
|
See kontroll tuleb jah sinna while tsükli sisse panna, ei mõelnud ennem korralikult.
Kas peab ikka defineerima? Php vist ei eelda seda, kuigi viisakas vast oleks jah algul öelda, et $stop=0;
Aitaks vist jah ka ainult selle kasutaja kontrollist ning päring peaks kah kiirem tulema. Minul tõmbab ju terve tabeli läbi.
//Äkki on olemas
$stop=0;
$olemas=mysql_query("SELECT * FROM kasutajad");
while($q=mysql_fetch_array($olemas)){
$mysql_user=$q["kasutaja"];$parol=$q["parool"];
if ($kasutaja==$mysql_user || $parol==$parool) {
$stop=1;
}
}
if($stop==1){
echo "<br />Selline kasutaja või parool on juba olemas!";
}}
|
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
25.09.2007 19:33:09
|
|
|
ok, aga äkki keegi oskab anda mõnda linki, et mis moodi teha logimissysteemi.
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004

|
25.09.2007 20:17:24
|
|
|
andrusny kirjutas: |
See kontroll tuleb jah sinna while tsükli sisse panna, ei mõelnud ennem korralikult.
Kas peab ikka defineerima? Php vist ei eelda seda, kuigi viisakas vast oleks jah algul öelda, et $stop=0;
Aitaks vist jah ka ainult selle kasutaja kontrollist ning päring peaks kah kiirem tulema. Minul tõmbab ju terve tabeli läbi.
//Äkki on olemas
$stop=0;
$olemas=mysql_query("SELECT * FROM kasutajad");
while($q=mysql_fetch_array($olemas)){
$mysql_user=$q["kasutaja"];$parol=$q["parool"];
if ($kasutaja==$mysql_user || $parol==$parool) {
$stop=1;
}
}
if($stop==1){
echo "<br />Selline kasutaja või parool on juba olemas!";
}}
|
|
eelnev defineerimine pole vajalik, aga tekitab notice, mis pole kena (hea kood ei tekita isegi ühtegi noticet, ehk siis kui miski kuskil on katki, siis näed kohe, mitte ei pea megakarja noticeid ärapeitma)
samuti võiksid sinna ifi sisse panna käsu break();
siis peatatakse koheselt while tsükli jooksutamine (mõttetu jooksutada kui leitud juba vaste, et kasutaja olemas)
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
julmu
HV kasutaja

liitunud: 20.12.2004
|
25.09.2007 20:27:54
|
|
|
Miks seda while tsüklit on üldse vaja?
Siin teemas oli ju juba üks mõistlikum lahendus välja pakutud, kus WHERE abil kontrollitakse kasutaja olemasolu.
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004

|
25.09.2007 20:31:15
|
|
|
julmu kirjutas: |
Miks seda while tsüklit on üldse vaja?
Siin teemas oli ju juba üks mõistlikum lahendus välja pakutud, kus WHERE abil kontrollitakse kasutaja olemasolu. |
vaja tõesti pole, on palju inimlikemaid lahendusi, lihtsalt korrigeerin tema pakutud koodi
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
13.01.2008 18:10:50
|
|
|
Võtsin jälle siis php õppimise käsile Põhimõtteliselt pean otsast peale hakkama õppima. Kas keegi teab, kas eesti keelseid php'st raamatuid on olemas?
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
13.01.2008 19:06:48
|
|
|
See on olemas mul juba. Äkki on mingi raamat ka olemas , jube nõme on lugeda arvuti taga. Ja seal php aabitas on osad õpetused vigased nagu ma aru olen saanud.
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
Brom
HV kasutaja

liitunud: 18.07.2005
|
13.01.2008 19:19:41
|
|
|
Usu mind, lihtsalt lugedes ei tule midagi välja..
Kunagi olin ka sellises faasis, et üritasin algust teha, kordi läks nii 3, enne, kui sain jalad alla. Teoorias on kõik ilus seni, kui reaalseks kirjutamiseks läheb.
Esimeseks projektiks, peale natukest katsetamist, võta külalisteraamat mysqli põhjal.
|
|
Kommentaarid: 13 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
13 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
13.01.2008 19:48:51
|
|
|
Selles suhtes on php aabits hea, kui hakkad midagi tegema tuleb vajadus mingi operatsiooni järele. On näiteks sul mingi pikem pildi aadress "/Pildid/Lilled/Suured/tulp.jpg" ja vaja on ainult pildi nime, nüüd lähed php aabitsasse ja hakkad lappama vaatad, mida asjad teevad ja kas sellega sul midagi pistmist on. basename peaks selleks sobima.
Edit: Nii sama lugemisega õppida, sul peab ikka s****s hea mälu olema, et kõik asjad meelde jäävad kohe ja hiljem, kui teed midagi on kohe peast vajalik võtta. Paljusid, kui mitte enamus funktsioone tava kirjutajad ei kasutagi.
_________________

viimati muutis andrusny 13.01.2008 19:51:35, muudetud 1 kord |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004

|
13.01.2008 19:51:01
|
|
|
andrusny, ma lähenen sellele probleemile jällegi dokumentatsiooni kaudu
dokumentatsioonis on kategooriatesse jaotatud funktsioonid ning kui ei tule meelde et mis mõne funktsiioni nimi oli, siis lähen võtan sobiva kategooria lahti ning otsin endale sobiva funktsiooni
antud juhul siis http://ee.php.net/manual/en/ref.filesystem.php
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
13.01.2008 20:07:43
|
|
|
See ka hea lahendus. Eks kõik võimalused tuleb ära kasutada. Suur tõenäosus, et googli otsingusse split filename php ja leiad sealt mingi toreda lahenduse. Teise tulemuse pealt saaks kohe midagi aretada.
edit:Kõige raskem on õieti küsida.
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
Telempe
Kreisi kasutaja

liitunud: 02.11.2002
|
13.01.2008 20:15:49
|
|
|
tsitaat: |
edit:Kõige raskem on õieti küsida.
|
Veel raskem on õigesti küsida.
_________________ ORLY? I hardly know her! |
|
Kommentaarid: 22 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
21 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
14.01.2008 21:33:06
|
|
|
Brom kirjutas: |
Usu mind, lihtsalt lugedes ei tule midagi välja..
Kunagi olin ka sellises faasis, et üritasin algust teha, kordi läks nii 3, enne, kui sain jalad alla. Teoorias on kõik ilus seni, kui reaalseks kirjutamiseks läheb.
Esimeseks projektiks, peale natukest katsetamist, võta külalisteraamat mysqli põhjal. |
Seda kylalisteraamatut ma hakkasin siis tegema, kui mõned kuud tagasi alustasin selle php õppimist. Mõtlesin, et teen edasi nüüd, aga avastasin , et ma ei mäleta mitte mõhkugi enam :S Võtsin w3schooli lahti uuesti ja hakkasin uuesti otsast peale õppima.
---------------------------------------------------------------------------------------------------------------
Äkki keegi oskab aidata, miks ma ei saa mysql baasiga yhhendust?Kasutan xampp'd ja koodi tegin sellise:
<?php
$serv="localhost";
$user="root";
$pass="";
mysql_connect($serv,$user,$pass);
if (mysql_query("CREAT DATABASE test22")) {
echo "Tehtud";
}
else {
echo "Vot ei teinud!";
}
?>
|
Ja kui jooksutan seda siis annab selle viimase "Vot ei teinud".
xampp's mysql on tööle panud.
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
14.01.2008 21:45:09
|
|
|
karlcrutch kirjutas: |
Äkki keegi oskab aidata, miks ma ei saa mysql baasiga yhhendust?Kasutan xampp'd ja koodi tegin sellise:
<?php
$serv="localhost";
$user="root";
$pass="";
mysql_connect($serv,$user,$pass);
if (mysql_query("CREAT DATABASE test22")) {
echo "Tehtud";
}
else {
echo "Vot ei teinud!";
}
?>
|
Ja kui jooksutan seda siis annab selle viimase "Vot ei teinud".
xampp's mysql on tööle panud. |
alustada võiks sellest, et see käsk on siiski CREATE DATABASE, mitte CREAT. Ja arvatavasti oleks sa oluliselt kergemini selle asja ise selgeks saanud, kui sa oleks else blokki kirjutanud mysql_error(), oleks vähemalt teada saanud, mis valesti läks
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
15.01.2008 22:28:48
|
|
|
Ei no jah , ma eriti loll, ei saa aru, mis moodi ma seda tähele ei pannud Tänud.
Äkki keegi oskab öelda, kub on mõttekam, kas teha nii, et kylalisteraamat lisab postitused txt faili või siis äkki saab lisada ka sql andmebaasi?
nüüd on mul nii palju valmis kylalisteraamatust, et saab registreeruda(andmed lisatakse sql baasi) ja sisse logida.Aga nüüd on mul juuhe suht koos, et mis moodi ma peaks tegema selle lehe, kuhu suunatakse sisse loginud kasutaja?Aga see peaks nagu nii olema, et näiteks, kui ma panen selle faili aadressi aadressi reale brauseris siis ta ei laseks mind sinna ligi vms, et ainult sisse loginud kasutajad saavad sinna ligi.
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
nene
Kreisi kasutaja

liitunud: 20.03.2004
|
15.01.2008 23:32:41
|
|
|
karlcrutch kirjutas: |
Äkki keegi oskab öelda, kub on mõttekam, kas teha nii, et kylalisteraamat lisab postitused txt faili või siis äkki saab lisada ka sql andmebaasi? |
Lihtsam ja töökindlam on kasutada andmebaasi.
karlcrutch kirjutas: |
Aga nüüd on mul juhe suht koos, et mis moodi ma peaks tegema selle lehe, kuhu suunatakse sisse loginud kasutaja? Aga see peaks nagu nii olema, et näiteks, kui ma panen selle faili aadressi aadressi reale brauseris siis ta ei laseks mind sinna ligi vms, et ainult sisse loginud kasutajad saavad sinna ligi. |
Uuri PHP sessioone.
Sisselogimislehel näiteks salvestad sessioonimuutujasse $_SESSION['sees'] = true; hiljem vajalikus kohas kontrollid, kas on sees: if (!$_SESSION['sees']) echo "Enne pead sisse logima!";
|
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
23 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
16.01.2008 21:31:29
|
|
|
Ma vb sain valesti aru, aga ma tegin nii:
Selles failis, kus kontrollib, kas kasutaja ja parool klapivad, tegin nii ,et kui kõik ok ja klapivad siis:
//Kas ühtivad
if ($user==$m_user and $pass==$m_pass) {
$_SESSION["sees"]=true;
echo "<center><b>Te olete sisse loginud</b><br />
<a href=tools.php>Vajuta siia</a></center>"; |
Ja siis selles tools.php failis tegin nii alguses:
<?php
session_start();
if ($_SESSION["sees"]) {
echo "sees";
}
else {
echo "väljas";exit;
} |
Kui sisse login siis ytleb sees ja kui selle faili(tools.php) niisama avan brauseris siis ytleb ka sees.
Mis moodi nii saaks, et kui niisama avan siis ytleb, et väljas ja faili muudele võimalustele ligi ei saaks?
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
webromps
HV kasutaja
liitunud: 13.06.2005
|
16.01.2008 22:27:32
|
|
|
Ma ei tea kas keegi mainis siin seda, aga ühed võimalused php õppimiseks on osta www.lynda.com 'st omale cd php videoõpetustega või osta omale kasutaja sinna. Muidugi leiab sealt ka alates xp tavakasutaja videõpetustest kuni profitarkvara õpetusteni välja. Vihjeks muide, et internetis on ka liikvel osadest õpetustest piraat plaate.
|
|
Kommentaarid: 6 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
4 |
|
tagasi üles |
|
 |
nene
Kreisi kasutaja

liitunud: 20.03.2004
|
17.01.2008 00:18:48
|
|
|
Aga kui sa brauseri vahepeal kinni paned ja siis otse sellele tools.php lehele lähed, kas siis ütleb ka "sees"?
Üldiselt saad sa ju väljumiseks teha ka mingi logout lehe, kus $_SESSION["sees"] saab väärtuseks false.
|
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
23 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
17.01.2008 22:53:30
|
|
|
Kuule nii toimib jah, et kui brauser kinni panna ja uuesti avada ja siis otse tools.php faili minna siis annab väljas. Ma tegin nii enne, et logisin sisse ja siis panin tabi kinni firefoxis ja siis avasin selle tools.php uuesti.
-----------------------------------------------------------
Äkki keegi oskab öelda, mis moodi saaks nüüd nii teha, et kui sisse logid siis saad poste redigeerida?No ma ise suutsin nii palju aretada, et sain poste redigeerida, aga kui salvesta vajutasin siis muutis ta kõik postid yhe suguseks ja seda ma enam korda ei osanud teha. Kustutasin selle koodi jupi ära ja nüüd nagu juhe jumala koos. Ma tean, et tuleb seda id'd kasutada, et ta need õieti salvestaks, aga ma ei tea mis moodi seda teha.
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
skycat
HV kasutaja

liitunud: 20.05.2003
|
18.01.2008 02:10:54
|
|
|
karlcrutch kirjutas: |
Kuule nii toimib jah, et kui brauser kinni panna ja uuesti avada ja siis otse tools.php faili minna siis annab väljas. Ma tegin nii enne, et logisin sisse ja siis panin tabi kinni firefoxis ja siis avasin selle tools.php uuesti.
-----------------------------------------------------------
Äkki keegi oskab öelda, mis moodi saaks nüüd nii teha, et kui sisse logid siis saad poste redigeerida?No ma ise suutsin nii palju aretada, et sain poste redigeerida, aga kui salvesta vajutasin siis muutis ta kõik postid yhe suguseks ja seda ma enam korda ei osanud teha. Kustutasin selle koodi jupi ära ja nüüd nagu juhe jumala koos. Ma tean, et tuleb seda id'd kasutada, et ta need õieti salvestaks, aga ma ei tea mis moodi seda teha. |
kui sessionide võimalustest väheks jääb uuri küpsiseid!
http://www.w3schools.com/php/php_cookies.asp
-----------------------------------------------------------------
kui sa midagi muudad andmebaasi nagu posti siis sa kirjutad ilmselt midagi sarnast
sql:
|
UPDATE tabel SET valja_nimi = 'uus vaartus' WHERE id = 8
|
hetkel muudaks ta ära siis rea kus id=8, kui sa seda WHERE tingimust sinna ei paneks siis ta muudaks ära kõik read
|
|
Kommentaarid: 17 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
0 :: |
12 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
18.01.2008 18:44:31
|
|
|
ok, sellest ma saan aru, aga mis moodi ma selle nii saaks, et kui ma whilega tsükliga lasen, kõik postitused lehele nii ,et neid muuta saaks, aga mis moodi ma selle id saan lehele sisestada?Natuke segaselt seletasin vist
Ise tegin midagi sellist umbes:
$pla=mysql_query("SELECT * FROM plapla ORDER BY id");
while ($r=mysql_fetch_array($pla) {
$nimi=$r["nimi"];
$tekst=$r["tekst"];
$mail=$r["mail"];
$id=$r["id"]; <------ see ei anna id'd, kui pärast echo $id sisestada. |
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004

|
18.01.2008 20:48:59
|
|
|
while tsükkel on sul katkine, kontrolli sulud üle
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
karlcrutch
HV kasutaja

liitunud: 07.04.2006
|
18.01.2008 21:11:52
|
|
|
failis on korras see sulu värk, siia kribasin lihtsalt veaga
$pla=mysql_query("SELECT * FROM plapla ORDER BY id");
while ($r=mysql_fetch_array($pla)) {
$nimi=$r["nimi"];
$tekst=$r["tekst"];
$mail=$r["mail"];
$id=$r["id"]; <------ see ei anna id'd, kui pärast echo $id sisestada. |
|
|
Kommentaarid: 9 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
|