[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Всегда правда - в чем прикол?
Strannik
Здравствуйте. Код


$recordSet = $db->Execute("select * from `status` WHERE `email`='$email' AND `password`='$passw'");
if (!$recordSet)
{
?>
<script>
window.document.location.href='index.php?mode=login_error'
</script>
<?php
}
else{echo "Hello";}


всегда получаю Hello даже если неправильная связка email и passw

Почему?





Спустя 9 минут, 39 секунд (25.11.2011 - 16:27) Placido написал(а):
Потому что $db->Execute() вернет FALSE только при ошибке в запросе. У тебя же ошибки нет, просто твой SELECT возвращает 0 строк.

Спустя 8 минут, 51 секунда (25.11.2011 - 16:35) Placido написал(а):
Могу ошибаться. Возможно, и при ошибке в запросе он вернет не false, а что-то другое. Это PEAR?

Спустя 4 минуты, 21 секунда (25.11.2011 - 16:40) Strannik написал(а):
Placido
а как проверить?

это php + ADOdb

Спустя 3 минуты, 29 секунд (25.11.2011 - 16:43) Placido написал(а):
Открой документацию ADOdb и посмотри, что возвращает Execute.

Спустя 48 секунд (25.11.2011 - 16:44) Invis1ble написал(а):
Скорее всего объект-итератор

Спустя 4 минуты, 29 секунд (25.11.2011 - 16:49) Placido написал(а):
Как я и предполагал, false возвращается только при ошибке исполнения запроса.

Цитата
Execute($sql,$inputarr=false)

Execute SQL statement $sql and return derived class of ADORecordSet if successful. Note that a record set is always returned on success, even if we are executing an insert or update statement. You can also pass in $sql a statement prepared in Prepare().

Returns derived class of ADORecordSet. Eg. if connecting via mysql, then ADORecordSet_mysql would be returned. False is returned if there was an error in executing the sql.

Спустя 3 минуты, 29 секунд (25.11.2011 - 16:52) Invis1ble написал(а):
Strannik
есть такая ф-ция - var_dump() - рекомендую. Большинство вопросов отпадет сами собой. А те, которые не отпадут можно выяснить в мануалах. И уж потом велкам на форум.

Спустя 4 минуты, 16 секунд (25.11.2011 - 16:56) vital написал(а):
Цитата
Note that a record set is always returned on success, even if we are executing an insert or update statement

Спустя 8 минут, 51 секунда (25.11.2011 - 17:05) Strannik написал(а):
читаю но еще не понял от и спросил

Спустя 37 минут, 38 секунд (25.11.2011 - 17:43) Strannik написал(а):
через var_dump получаю

Array ( ) object(ADORecordSet_access)#2 (30) { ["databaseType"]=> string(6) "access" ["bind"]=> bool(false) ["dataProvider"]=> string(4) "odbc" ["useFetchArray"]=> NULL ["_has_stupid_odbc_fetch_api_change"]=> bool(true) ["fields"]=> bool(false) ["blobSize"]=> int(100) ["canSeek"]=> bool(false) ["sql"]=> string(67) "select * FROM `status` WHERE `email`='admin' AND `password`='admin'" ["EOF"]=> bool(true) ["emptyTimeStamp"]=> string(6) " " ["emptyDate"]=> string(6) " " ["debug"]=> bool(false) ["timeCreated"]=> int(0) ["fetchMode"]=> int(0) ["connection"]=> object(ADODB_access)#1 (89) { ["databaseType"]=> string(6) "access" ["hasTop"]=> string(3) "top" ["fmtDate"]=> string(7) "#Y-m-d#" ["fmtTimeStamp"]=> string(14) "#Y-m-d h:i:sA#" ["_bindInputArray"]=> bool(false) ["sysDate"]=> string(24) "FORMAT(NOW,'yyyy-mm-dd')" ["sysTimeStamp"]=> string(3) "NOW" ["hasTransactions"]=> bool(false) ["upperCase"]=> string(5) "ucase" ["replaceQuote"]=> string(2) "''" ["dataProvider"]=> string(4) "odbc" ["hasAffectedRows"]=> bool(true) ["binmode"]=> int(1) ["useFetchArray"]=> bool(false) ["curmode"]=> int(2) ["_genSeqSQL"]=> string(28) "create table %s (id integer)" ["_autocommit"]=> bool(true) ["_haserrorfunctions"]=> bool(true) ["_has_stupid_odbc_fetch_api_change"]=> bool(true) ["_lastAffectedRows"]=> int(0) ["uCaseTables"]=> bool(true) ["_dropSeqSQL"]=> string(13) "drop table %s" ["database"]=> string(0) "" ["host"]=> string(110) "Driver={Microsoft Access Driver (*.mdb)};Dbq=D:\server\htdocs\php_access\include\base\base.mdb;Uid=Admin;Pwd=;" ["user"]=> string(0) "" ["password"]=> string(0) "" ["debug"]=> bool(true) ["maxblobsize"]=> int(262144) ["concat_operator"]=> string(1) "+" ["substr"]=> string(6) "substr" ["length"]=> string(6) "length" ["random"]=> string(6) "rand()" ["true"]=> string(1) "1" ["false"]=> string(1) "0" ["nameQuote"]=> string(1) """ ["charSet"]=> bool(false) ["metaDatabasesSQL"]=> string(0) "" ["metaTablesSQL"]=> string(0) "" ["uniqueOrderBy"]=> bool(false) ["emptyDate"]=> string(6) " " ["emptyTimeStamp"]=> string(6) " " ["lastInsID"]=> bool(false) ["hasInsertID"]=> bool(false) ["hasLimit"]=> bool(false) ["readOnly"]=> bool(false) ["hasMoveFirst"]=> bool(false) ["hasGenID"]=> bool(false) ["genID"]=> int(0) ["raiseErrorFn"]=> bool(false) ["isoDates"]=> bool(false) ["cacheSecs"]=> int(3600) ["memCache"]=> bool(false) ["memCacheHost"]=> NULL ["memCachePort"]=> int(11211) ["memCacheCompress"]=> bool(false) ["sysUTimeStamp"]=> bool(false) ["arrayClass"]=> string(18) "ADORecordSet_array" ["noNullStrings"]=> bool(false) ["numCacheHits"]=> int(0) ["numCacheMisses"]=> int(0) ["pageExecuteCountRows"]=> bool(true) ["uniqueSort"]=> bool(false) ["leftOuter"]=> bool(false) ["rightOuter"]=> bool(false) ["ansiOuter"]=> bool(false) ["autoRollback"]=> bool(false) ["poorAffectedRows"]=> bool(false) ["fnExecute"]=> bool(false) ["fnCacheExecute"]=> bool(false) ["blobEncodeType"]=> bool(false) ["rsPrefix"]=> string(13) "ADORecordSet_" ["autoCommit"]=> bool(true) ["transOff"]=> int(0) ["transCnt"]=> int(0) ["fetchMode"]=> bool(false) ["null2null"]=> string(4) "null" ["bulkBind"]=> bool(false) ["_oldRaiseFn"]=> bool(false) ["_transOK"]=> NULL ["_connectionID"]=> resource(7) of type (odbc link) ["_errorMsg"]=> string(0) "" ["_errorCode"]=> int(0) ["_queryID"]=> resource(9) of type (odbc result) ["_isPersistentConnection"]=> bool(false) ["_evalAll"]=> bool(false) ["_affected"]=> bool(false) ["_logsql"]=> bool(false) ["_transmode"]=> string(0) "" ["_error"]=> string(0) "" } ["_numOfRows"]=> int(0) ["_numOfFields"]=> int(4) ["_queryID"]=> resource(9) of type (odbc result) ["_currentRow"]=> int(0) ["_closed"]=> bool(false) ["_inited"]=> bool(true) ["_obj"]=> NULL ["_names"]=> NULL ["_currentPage"]=> int(-1) ["_atFirstPage"]=> bool(false) ["_atLastPage"]=> bool(false) ["_lastPageNo"]=> int(-1) ["_maxRecordCount"]=> int(0) ["datetime"]=> bool(false) } HELLO NOADORecordSet_access Object ( [databaseType] => access [bind] => [dataProvider] => odbc [useFetchArray] => [_has_stupid_odbc_fetch_api_change] => 1 [fields] => [blobSize] => 100 [canSeek] => [sql] => select * FROM `status` WHERE `email`='admin' AND `password`='admin' [EOF] => 1 [emptyTimeStamp] => [emptyDate] => [debug] => [timeCreated] => 0 [fetchMode] => 0 [connection] => ADODB_access Object ( [databaseType] => access [hasTop] => top [fmtDate] => #Y-m-d# [fmtTimeStamp] => #Y-m-d h:i:sA# [_bindInputArray] => [sysDate] => FORMAT(NOW,'yyyy-mm-dd') [sysTimeStamp] => NOW [hasTransactions] => [upperCase] => ucase [replaceQuote] => '' [dataProvider] => odbc [hasAffectedRows] => 1 [binmode] => 1 [useFetchArray] => [curmode] => 2 [_genSeqSQL] => create table %s (id integer) [_autocommit] => 1 [_haserrorfunctions] => 1 [_has_stupid_odbc_fetch_api_change] => 1 [_lastAffectedRows] => 0 [uCaseTables] => 1 [_dropSeqSQL] => drop table %s [database] => [host] => Driver={Microsoft Access Driver (*.mdb)};Dbq=D:\server\htdocs\php_access\include\base\base.mdb;Uid=Admin;Pwd=; [user] => [password] => [debug] => 1 [maxblobsize] => 262144 [concat_operator] => + [substr] => substr [length] => length [random] => rand() [true] => 1 [false] => 0 [nameQuote] => " [charSet] => [metaDatabasesSQL] => [metaTablesSQL] => [uniqueOrderBy] => [emptyDate] => [emptyTimeStamp] => [lastInsID] => [hasInsertID] => [hasLimit] => [readOnly] => [hasMoveFirst] => [hasGenID] => [genID] => 0 [raiseErrorFn] => [isoDates] => [cacheSecs] => 3600 [memCache] => [memCacheHost] => [memCachePort] => 11211 [memCacheCompress] => [sysUTimeStamp] => [arrayClass] => ADORecordSet_array [noNullStrings] => [numCacheHits] => 0 [numCacheMisses] => 0 [pageExecuteCountRows] => 1 [uniqueSort] => [leftOuter] => [rightOuter] => [ansiOuter] => [autoRollback] => [poorAffectedRows] => [fnExecute] => [fnCacheExecute] => [blobEncodeType] => [rsPrefix] => ADORecordSet_ [autoCommit] => 1 [transOff] => 0 [transCnt] => 0 [fetchMode] => [null2null] => null [bulkBind] => [_oldRaiseFn] => [_transOK] => [_connectionID] => Resource id #7 [_errorMsg] => [_errorCode] => 0 [_queryID] => Resource id #9 [_isPersistentConnection] => [_evalAll] => [_affected] => [_logsql] => [_transmode] => [_error] => ) [_numOfRows] => 0 [_numOfFields] => 4 [_queryID] => Resource id #9 [_currentRow] => 0 [_closed] => [_inited] => 1 [_obj] => [_names] => [_currentPage] => -1 [_atFirstPage] => [_atLastPage] => [_lastPageNo] => -1 [_maxRecordCount] => 0 [datetime] => )

а как выудить отсюда _maxRecordCount ?

Спустя 29 минут, 40 секунд (25.11.2011 - 18:12) Strannik написал(а):
если кому пригодиться - количество записей - $result->RecordCount();
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.