Discussion on CakePHP Survey Form Generator Plugin


khanhtruong supports this item


40 comments found.

I’m considering to buy this plugin as it seems the best I’ve found so far. I only seem to miss the option to create a Likert scale (https://upload.wikimedia.org/wikipedia/commons/c/cc/Example_Likert_Scale.svg). Is it possible to do this with your plugin (or can I easily alter your code myself to make this possible?). You could of course make a list with radio buttons, but for Likert scales it is important that they are oriented horizontally.

No, It’s not support


thank’s your plugin is very good, but file input upload is missing in the form builder. What a pity ! You will do it in the future ?


I’m so sorry. Now, I busy and I have no plan to upgrade this plugin

I have some trouble with the control flow when filling out surveys. Required fields are indicated when pressing the ‘Next’ button, but when clicking one of the Step X links above, a user can still progress to the next step while required fields of the current step are empty. Additionally, a user can fill in the MathCaptcha correctly and submit their data even when some required fields are still empty. In this case, one gets to see there error

Error: The view for SurveyResponsesController::response() was not found.

which is correct because these empy required fields generate errors in SurveyResponsesController, which does not have this view file (SurveysConroller does). If you add the ‘controller’ => ‘surveys’ statement to the redirect command, the user does correctly get bounced back to the survey, but all filled in answers are not transferred and the whole survey is empty again and the flash error message is not shown. I think this is a serious flaw. A user should not be able to press the submit button at all, if not all required fields are filled in, or the MathCaptcha has been filled in incorrectly. If they are redirected back to the survey, at least all their answered should be preserved. Do you think you are able to fix this?

Hi, Please try clear the cache (app/tmp/cache/views) and test again

Thanks for your response. I’ve done this, but it didn’t help. It keeps trying to look for the view preview.ctp in the SurveyResponse folder, while this file is located in the Survey folder. I see that SurveyResponsesController extends SurveysController, so I understand what should be accomplished here, but I don’t know if cakePHP works that way. I think it will always look for view files in the folder of the controller that calls the action (in this case SurveyResponse) regardless of the controller that it extends. Furthermore, looking at the code of the response function in SurveysController, I see there is a check for a variable $results, but by the looks of it, this variable will never be instantiated as the response function has no argument for $results. Forgive me if I’m wrong, but I’m just trying to follow what’s happening and how the flow of information goes.

Hi, your plugin is great. One thing, could you add a user-login for administration? Then it is perfect.

Best Regards Dscho

You can use authentication components, find out more here: http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html

I have created a plugin to help authenticating & authorizing, you can view here: http://codecanyon.net/item/cakephp-20-authentication-acl-management-plugin/1325808

Hi, recently i have pruchased the plugin. I installed it in cake 2.3.10. Manage and create form are fine, but when i click on preview or delete ake throw me an error. On preview “Call to a member function setFlash() on a non-object in SurveysController.php on line 255” and on delete action the trouble is on check function, on line 180.

Con you help me with that? Thanks

I guess you do not include Session Component. Please read the article http://book.cakephp.org/2.0/en/controllers/components.html

Is it compatible with Bootstrap 3?

PLz help, just bought and when I install I get the following error

Excuse me for english

this link [link removed]

Error: Create the class SurveysController below in file: app/Controller/SurveysController.php <?php class SurveysController extends AppController { } Notice: If you want to customize this error message, create app/View/Errors/missing_controller.c


How to Validate E-mail and other fields?


Sorry, it’s not support validate email.


I have an error when I click on Submit>

Parse error: syntax error, unexpected T_STRING, expecting ’;’ or ‘{’ in /home2/digit325/public_html/continental-convention/app/Plugin/Survey/Model/SurveyResponse.php on line 34

Do you know how to solve it?


Ok thanks. But now I have this error message : Notice ( 8 ): Undefined variable: nextId [APP/Plugin/Survey/Controller/SurveysController.php, line 256]

It’s not error. Please check your PHP config http://php.net/manual/en/function.error-reporting.php

Ok thanks!! Last question it’s possible to add an “upload” section in a survey?

Thanks a lot


i’ve installed your plugin and get the following error when Syncing ACOs:

Strict (2048): Declaration of SurveyResponsesController::index() should be compatible with SurveysController::index() [APP/Plugin/Survey/Controller/SurveyResponsesController.php, line 15]

Please help me :)

Open this file, goto line 118

public function index($id){


public function index($id=null){
If you want download the new update, goto my profile and send me a message. Thanks

Looks great!

Is there a way from the admin side to change any of the layout? Say I want to use the radio buttons to say on a scale of 1-10 and want them all side by side and not under the other?

I know it can get changed with CSS but didn’t see any layout changes available in the admin section…

Wanted to be sure I wasn’t missing something

Also curious as to where the code is displayed to set up the form once it is created… you obviously would want the users to see the creation side of things…

Hi, Nice Job. It is possible to Manage Admin Roles ? Thank you

I would like to have a survey redirect to another page after being filled-out with the survey_responses id passed along with it. Is this possible with the built-in functionality or does this require implementation?

Any recommendations?



Go to my demo http://goo.gl/INY7uv , click on Survey Settings, then you will see the option “Take them to a particular web page”

Hi. I like your plugin but I’m trying to build a bit more advanced surveys. So.. currently plugin only defines that there should be 10 questions per page. I need to make it that the user can define which questions belong to what page.

So my survey could have questions 1,2 and 3 on page 1, question 4 on page 2 and questions 5 and 6 on page 3. Any ideas how to start doing this logic? I guess I need to start editing jquery.formbuilder.js?

I don’t need any help anymore, since I’ve succeeded building survey like I explained above :)

I just made element called page_break and in formbuilder.php’s form field foreach-loop I cut the fieldset whenever page_break is found in current item in this array.

Also I fixed those green/red images on top of Steps in the survey preview. I just added extra class to html li-element and put position:relative..


How do I go about showing a response on the form? e.g. if the form has been filled out we pass in the response id and the survey id to show the pre filled in information?


I have created the feature with name “Browse Response One by One”. I think you can use this feature to review user’s response.

Yes I saw that but it only shows the text on the page, it doesn’t show the form fields as they are setup in the survey?


Yes, It just show the data they choice

so far I am not all that impressed….simply because the install instructions in no way match the actual files that are sent with the d/l

-Install Guide- 1. Import surveys.sql to your DB
2. Update app/Config/database.php <—DOES NOT EXIST
3. Copy Plugin/Survey & Plugin/Upload folder to app/Plugin
4. Open app/Config/bootstrap.php, <—DOES NOT EXIST
5. Copy View/Themed folder to app/View
6. Open app/Controller/AppCpntroller.php, <—DOES NOT EXIST
7. Open app/Config/core.php file <—DOES NOT EXIST
8. Create folder app/webroot/files/surveys, make it writable.
9. Go to URL http://your_app_path/survey/surveys/index <—DOES NOT EXIST

It’s CakePHP plugin. You should go to cakephp.org and download it first.

Hello! Great plugin!

But i need some help here:

In: survey/surveys/add i got some js errors in console: jquery.browser.min.js:1 Uncaught ReferenceError: jQuery is not defined jquery.formbuilder.js:561 Uncaught ReferenceError: jQuery is not defined surveys_design.js:1 Uncaught ReferenceError: $ is not defined jquery.placeholder.min.js:2 Uncaught ReferenceError: jQuery is not defined add:17 Uncaught ReferenceError: $ is not defined

Uncaught ReferenceError: jQuery is not defined

What i have to do about this ?

I think you don’t import jquery into your layout. Open View/Themed/Bootstrap/Layouts/default.ctp, you will see the script that I import jquery:

<?php echo $this->Html->script(‘libs/jquery’);?>

Hello, can I add at result page ( where is : Thanks for filling in our survey. Your opinion is important to us) some images with links?

Can I do this form as a popup window? will you help me? Thanks

Hello Is it possible to translate the script?

Sorry, I don’t understand your idea.

No, just 2.x