Тема
|
sh mi se prusne mozuka
|
|
Автор |
AC (Proud Like AGod) |
Публикувано | 22.02.02 03:00 |
|
abe oki imam forma
formata zima email
proveriava dali v db-to
ako e, mi vrushta id-to na choveka kato int
ako ne e, go zapisva
opitah taka no kogato go niama vrushta prazen rezultat ot db-to i mi kazva che tova ne e validen input za join()
$Query = "SELECT usID FROM $TableName WHERE email = '$email'";
$Result = mysql_db_query ($DBName, $Query, $Link);
/* bash tuka e problema... ne moga da razbera kakvo se zapisva v $Result ako bazata danni ne nameri nito edin red suotstvasht na iziskvaniata */
$usID = (int) join(" ", mysql_fetch_row($Result));
/* join-a suotvetno mi pishi kato mu pratia praznen array ili kvoto e tam */
nekvi idei
ebati
moe li sum tolkoz lame... i v reference na namerih nishto deto da mi reshi problema...
ako niakoi ima niakakuv po-izpitan nachin za cialata tazi deinost shte se radvam da procheta... tova si e moe skalupeno proizvedenie
Excuses are like assholes. Everyone has one and they all stink.
|
|
Тема
|
Re: sh mi se prusne mozuka
[re: AC]
|
|
Автор |
enchanted (one of my turns) |
Публикувано | 22.02.02 03:33 |
|
проявил си бая голямо въображение :)
$mo=mysql_result($Result, 0);
if(is_null($mo)){
//INSERT
}
else{
//manipulate with id
}
# лудите, лудите... те да са живи!
|
|
Тема
|
da ama ne
[re: enchanted]
|
|
Автор |
AC (Proud Like AGod) |
Публикувано | 22.02.02 08:11 |
|
ne shte da bachka
mdam
$Query = "SELECT usID FROM $TableName WHERE email = '$email'";
$Result = mysql_db_query ($DBName, $Query, $Link);
$mo = mysql_result($Result, 0);
if(is_null($mo))
{
print("insert");
} else {
print ("manipulate with id");
}
ako tova si imal predvid... mdam... mi ne bachka...
vaprosa e kakvo stava ako niama nishto tam... prazno... shtoto query-to vrushta nishto... i posle kato se opitash da vidish rezultat nema kvo da vidish shtoto kazva "Unable to jump to row 0 on MySQL result index 2 in ..."
abe zamotah se ujasno
az misleh za drug variant... izvikvash dvete koloni s id-ta i email-i i posle s loop sravniavash seki email edin po edin v PHP... i kato namerish vrushtash id-to
abe nekva boza s dve dumi s koiato se gubi polovinata ot funkcionalnostta na SQL
Excuses are like assholes. Everyone has one and they all stink.
|
|
Тема
|
Re: sh mi se prusne mozuka
[re: AC]
|
|
Автор | newbie (Нерегистриран) |
Публикувано | 22.02.02 09:30 |
|
tva nqma li a svurshi rabota?
$Query = "SELECT usID FROM $TableName WHERE email = '$email'";
$Result = mysql_db_query ($DBName, $Query, $Link);
if (mysql_num_rows($result) == 0){
edikvosi
}
else{
neshto drugo
}
|
|
Тема
|
Re: sh mi se prusne mozuka
[re: AC]
|
|
Автор |
salle (Един такъв) |
Публикувано | 22.02.02 10:53 |
|
Ами не четеш примерите в документацията на PHP-то
1. Както ти е написал newbiew винаги можеш да провериш колко реда е резултата с
mysql_num_rows()
и ако е 0 ...
2. Можеш да използваш
while ($row = mysql_fetch_row ($query_result_handle))
{
}
който цикъл ще се изпълни "num_rows" пъти т.е. при 0 нито веднъж
Linux is like a wigwam - No Windows, No Gates, Apache inside
|
|
Тема
|
Re: sh mi se prusne mozuka
[re: AC]
|
|
Автор |
Milenishte () |
Публикувано | 22.02.02 11:02 |
|
Ot manuala na PHP:
Only for SELECT statements mysql_query() returns a resource identifier or FALSE if the query was not executed correctly. For other type of SQL statements, mysql_query() returns TRUE on success and FALSE on error. A non-FALSE return value means that the query was legal and could be executed by the server. It does not indicate anything about the number of rows affected or returned. It is perfectly possible for a query to succeed but affect no rows or return no rows.
Gore-dolu shashtoto e i za mysql_db_query() ma taz funkcia e deprecated i po- dobre da polzvash mysql_query().
I oshte edno utochnenie - ako e vazmojno da imash nekolko ID-ta s edin i sasht email, tova koeto pravish shte ti varne samo parviq.
po dobre pravi slednoto - pak go ima v manual-a:
$usID = '';
$result = mysql_query("select usID from table") or die("Invalid query");
while ($row = mysql_fetch_array($result)) {
$usID .= "usID: ".$row["usID"];
}
if(empty($usID)) {
// nema zapis
} else {
// ima zapis
}
|
|
Тема
|
da de
[re: Milenishte]
|
|
Автор |
AC (Proud Like AGod) |
Публикувано | 22.02.02 11:19 |
|
tova go chetoh
samo deto che:" if the query was not executed correctly" niama vruzka v sluchaia
shtoto edin select koito ne izbira nikakvi redove ne oznachava che e neveren ili nepravilen... i suotvetno mi vrushta true na izpulnenieto i greshka kato se opitam da izvleka rezultat s niakoi ot fetch-ovete
taka ili inache... shte probvam i tova s num_rows... i drugia primer deto preporuchvash... ma nikak ne mi se iskashe da se lishavam ot where-a... po redica prichini svurzani s efektivnostta i dobria design...
Excuses are like assholes. Everyone has one and they all stink.
|
|
|
E da de :) i az tfa kazvam ;)
nali pitashe kakvo se sadarja v $result ;)
Kolkoto do tova, koe da izpolzvash- ako ne te interesuva koe tochno e $usID, a samo dali ima zapis ili ne - po dobre polzvah mysql_num_rows().
Inache nema nujda da se lishavash ot "where" clausata, prosto az si q spestih vav priemra ;)
|
|
Тема
|
Re: da de
[re: Milenishte]
|
|
Автор |
AC (Proud Like AGod) |
Публикувано | 22.02.02 11:37 |
|
ne staa ora i tova si e
prosto nito edna ot tia funkcii ne iska da prieme toia $Result koito suotveststva na nula reda... abe pone da ne mi izkarvashe suobshtenieto ma i @ ne pomaga
probvah veche
Excuses are like assholes. Everyone has one and they all stink.
|
|
|
Shto ne paste-nesh tochno tova koeto se opitvash da napraish s tezi funkcii ;)
|
|