Bug #7190
eu_ldap does not work with adodb installed
| Status: | Resolved | Start date: | 2010-04-09 | |
|---|---|---|---|---|
| Priority: | Must have | Due date: | ||
| Assignee: | Norman Seibert | % Done: | 100% |
|
| Category: | - | Spent time: | - | |
| Target version: | - | |||
| Votes: | 0 |
Description
Hello,
I already have reported this per email.
If you install the adodb extension and eu_ldap in typo3 4.3.2 and then logout / login again it will just fail with:
DBAL fatal
error: No handler found in handler_getFromTableList() for: "" (SQL
engine parse ERROR: No table name found as expected in
parseFromTables()!: near " ")
No idea which query this is, but maybe it would be enough to have a conflicts on adodb.
History
Updated by Jonas Felix about 3 years ago
It would be great if you could trace the problem to the query or function in eu_ldap, than we can fix it... But we won't search the problem, because we don't need adodb.
Updated by Patrick Matthäi about 3 years ago
Uf I am not a developer in PHP and typo3.
Updated by Norman Seibert about 3 years ago
I installed dbal and adodb and BE and FE authentication worked as expected.
Updated by Philipp Thiele about 3 years ago
- File backtrace-handler_getFromTableList.pdf added
Same Problem, I use TYPO3 4.3.3, eu_ldap 2.8.1 with Oracle 11g over DBAL, Problem is located somewhere in the authentication services: It seems that there is no table defined in fetchuserrecord(), so the fullQuoteStr() / QuoteStr(), which must have a table, cannot work properly and end up with this error.
I'm not a TYPO3 services expert, so i'm not sure if this is a dbal or auth-services issue or only eu_ldap-related, but it seems to be an auth-services problem.
Full backtrace (debug placed in handler_getFromTableList) appended.
Updated by Norman Seibert about 3 years ago
- Status changed from New to Accepted
- Assignee set to Norman Seibert
Updated by Philipp Thiele about 3 years ago
short notice about progress:
after debugging i discovered line 46 in class.tx_euldap_sv2.php (method getUser): $user = $this->fetchUserRecord($this->username);
When i change this line to $user = $this->fetchUserRecord($this->username,'',$this->authInfo['db_user']);
it is possible for backend users to login, if they are not stored in LDAP. LDAP-user are still unable to login, but the quoteStr()-Error had gone away, and now they get the standard error message "Your login attempt did not succeed".
So i think that i did something wrong with the config.
Updated by Philipp Thiele about 3 years ago
Philipp Thiele wrote:
So i think that i did something wrong with the config.
Now, after reconfiguring my ldap server dataset, all works fine for me (with the already posted modification).
Updated by Norman Seibert about 3 years ago
- Status changed from Accepted to Resolved
- % Done changed from 0 to 100