Mac. fopen( ) does not create a file or accept data. Modify Permissionsmacintosh fopen() permissions
Posted 01 March 2014 - 03:38 PM
After a crazy amount of troubleshooting and getting hints and feedback from others, I was so darn determined to get on with my tutorials and I found the solution myself.
Keyword search: php and 'Mac computer' and fopen and chmod.
Using:php and Mac and fopen() didn't get me there.
I hope this forum allow for URL insertion. Others do.
1. This is the solution that I used.
It was all about PERMISSIONS and I used the Mac Finder.
This is my DocumentRoot path: /Library/WebServer/Documents
This is the path to the directory where I am saving all of my example programs from tutorials:
This was how I went about troubleshooting this just to make certain that I was clear about at which level I needed to allow 'read and write' permissions. I should have started from php/WithAlex but I started on the top.
From the Mac Finder I navigated to Library and changed permissions to 'read and write' at all 3 levels:
From the Mac Finder I navigated to WebServer and changed permissions to 'read and write' at all 3 levels:
From the Mac Finder I navigated to Documents and changed permissions to 'read and write' at all 3 levels:
I kept running the code which uses the fopen() function each time to see if I was able to create a new file and that this file ACCEPTED DATA input from my form.
The code which is in the previous post, DID INDEED CREATE the file when I used FOPEN() once I changed permissions to 'read and write' for all levels on phpWithAlex.
Then I worked for the bottom back up the tree and reset permissions to just 'read' etc. etc.
I wanted to find out the least amount of permissions required to run the code.
The only folder that requires permissions set to 'read and write' for all 3 levels: system, wheel, everyone Was phpWithAlex.
3. I like to work at the command line.
You can use terminal on a Mac and set permissions using the chmod() function. Here is the link.... Which explains many things and also why you may or may not want certain permissions at different levels.
If you read the last post, you will notice that I also modified my phi.ini and I ; un-commented a line
to find out if this allowed fopen() to work. It did not.
Then i set the ;comment =On rather than = Off etc. etc. it still did not allow fopen to work.
I am on a tablet or I would just copy paste those lines of code here.
If I leave this page and go to another and come back, this entire post disappears.
I learned that the hard way and had to start the post all over again.
I actually was curious so I put the ;comment back and it did not reintroduce the obstacle that I started with,
that fopen() would NOT create the file.
I am posting this exact post on 5 other forums that I am now frequenting because it was very time consuming to find this resolution. Although, this exact problem was not resolved from these forums, I LEARNED A TON FROM VERY HELPFUL PEOPLE WHO ARE JUST DONATING THERE TIME. IS THIS WHAT KEEPING THE INTERNET FREE IS ALL ABOUT ? Sure it is. Thank ALL of you.
NOTE: I navigated away from this post to copy the URL and I lost my entire post and had to start over.
Also, it is not easy to find my own posts once I logon- if they do NOT have new comments.
It is really helpful to have a PREVIEW option.
Posted 03 March 2014 - 09:52 AM
Thanks for reminding me that my issue was not Mac specific.
I like and almost prefer to work on the command line.
But I was just so glad to get this running and did not want to take time to sort out the
chmod settings like 777, 755 etc.
I know that each position of those numbers is related to a different level of permissions.
If you have a chance, can you please clarify things.
I am still rusty using these unix commands.
I need to be in the exact directory to chmod 775 ?
Or how do I type the path and then chmod 755 from the top level.
And to do this should I be typing
Macbookpro$ sudo nano directory name chmod 755.
4. Can you please explain this.... The strategy and best practice.
Posted 03 March 2014 - 10:11 AM
'Your message cannot be delivered to the following recipients:
Recipient address: email@example.com
Reason: Remote SMTP server has rejected address'
It was a short email - unrelated to this post- and about a coincidence
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users