You want users (anonymous) to be able to submit a suggestion on a form on the web page. This suggestion should not be published directly, but should go to a site admin. There should be a workflow setup where the site admin can review and validate the suggestion, and then choose to publish it.
Yes, exactly.
In my site I had set the button on the front page from where anyone can change the content of the site, so now I want to set this situation under which the normal user just send the suggestion/comments and could not published it but it is done by administrator only.
In the book(Learning eZ publish 3) under the headlinetopic "AUTHORIZATION AND ROLES" I had read that 'we can specify that a normal user can add comments to articles, but not submit articles themselves.', but here no further things is given and I try to set this logic. If you have any idea then it is very much welcome for me.
I think the simplest solution to this would be to use a feedback form. Users can enter information which is sent directly to the site admin via e-mail. See the sample form bundled with the eZ publish distribution.
If you want to store the information as an object in eZ publish then the anonymous user needs to be able to create and edit objects of a special class. You can make it hidden to any user except admin by disabling read access to it or you can use a workflow.