Things to check:
1) Check the Admin Tool and make sure the "PHP" radio button is lit for the database in question. I know you said the extended priv is enabled, but ... double-check anyway.
2) Double-check the credentials in the login file. Make sure the correct user name and password are being used (including case).
3) Double-check the file permissions on the file. Make sure the "fmsadmin" user has permissions to read the file (although this is a bit of a long shot).
Those come to mind right away.
Thanks for your reply. My brain was so scattered from working on this that I didn't think to detail what I've already tried - sorry about that.
1) The PHP radio button is lit. In the bottom section, it shows that I'm connected with FileMaker Pro from the desktop but it doesn't show a PHP entry. The PHP entries do show for other databases on FM Server.
2) Credentials was my first thought too. I've triple checked them and they are correct. I've even tried a copy and paste of the credentials from my code into the FM user account to make sure I wasn't missing something.
3) Good thought on the fmsadmin user - that one hadn't occurred to me. The permissions are correct however. I've used Terminal to compared the permissions on the database in question to my others that do work and they match.
Again, thanks for your help. This one's really got me stumped!
Check that web/php connections are enabled in the new file, via the Extended Permissions, for the Privilege set of that account?
Okay, obvious stuff out of the way. What about the specific layout you're attaching to? Does it exist? Does the privilege set you're using have access to it?
Try a very simply PHP connection - just go to a known layout and do a FindAll. See what happens.
Also, when you say you see "PHP entries" from the other databases - do you mean the admin tool is showing connections over PHP? If so, then I would expect that. It just means you're able to connect to them and not to this one.
The PHP Extended Privilege is enabled for the account.
Thanks for your help!
Since this is in the development stage, I'm using the default "Full Access" privilege set, so it has access to all the layouts, tables, etc.
I just double-checked with newFindAllCommand and I'm still getting the error. It's weird - I can use the exact same code only replacing the name of the database and it works fine with the other databases. So it's something with the FileMaker file itself rather than the PHP.
And yes, I do mean that the Admin Console is showing PHP connections to my other databases, which makes sense. Sorry I wasn't more clear on that.
Thanks for your continued help.
Very odd. Try these:
1) Save a clone of the database, host that, and see if the problem occurs with the clone.
2) Try using the XML parser to query the database. Here's the string to try:
The underlying technology beneath PHP is XML. This test strips away the PHP API and goes directly at the database.
We might be looking at a problem with the install of Server, or possibly the database.
The clone didn't help.
The XML parser is new to me, although I recognize the query from reviewing FileMaker Server's logs during the troubleshooting process. I'm getting a blank screen in Safari when I try that string - testing against the problem database and a database that works through my PHP code. (I tried copying the query from the FMS logs from a previous successful transaction so I could get an idea of what I should be looking for, but that didn't work either.) The XML parser is giving me the same 802 error in the logs. It actually says "802 570." In the logs for past successful transactions from my PHP code, I see the account name referenced. Do I need to append some sort of authentication info to the XML parser string?
This is a good tool that I didn't know about previously. At least I feel like I've accomplished something in this ordeal!
Okay, I think you have a problem with your install of Server. You should be seeing the XML results for the records associated with the layout you select. (I'm assuming you substituted the IP address, database name, and layout name as appropriate.)
My suggestion would be uninstall Server and reinstall. Be sure to clear your Java cache after the uninstall. See what happens then.
I tried the uninstall and reinstall. That didn't help either, but I do have some additional information that I hope will shed some light on this issue.
In a desparate attempt to figure out what's going on, I tried checking every extended privilege. I stopped getting the 802 error and now I'm getting "Error 22 - The requested URL returned error: 401 - This can be due to an invalid username or password, or if the FMPHP privilege is not enabled for that user."
I unchecked extended privleges one by one and found that if I only have fmphp checked, I get the 802 error. If I have fmphp and fmxml checked I get Error 22. In fact, I can uncheck fmphp and still get Error 22. (Of course, fmapp is also checked.)
I don't know what to make of this. Hopefully the new info will make a light bulb come on for someone.
If you stop and then restart the web publishing engine, do you get any errors in the Server Admin panel, or does it say anything failed to start?
I don't know any reason why, with all extended privileges enabled and a server reinstallation which worked, including the reinstallation of the web service (which I believe is separate), you would get any errors if the web service is working correctly.
I'm at DevCon at the moment, and can't check an error 22, but this is starting to sound like a Tech Support issue. I've seen one similar case - and that is still open with Tech Support. I'm afraid I'm about at my limit with it. Sorry.
No worries, I appreciate all your efforts. The issue's got me stumped too. Is there a link in the forum to the similar case? I would be interested to see how it matches up with my experience.
I had hoped to be at DevCon myself this year, but things didn't work out. Maybe next year.
Thanks again for your time and help.
I could link you to the other case, but it wouldn't do much good. It was mine, and never got any replies.
Hope you get it sorted.