Sorry, I had a typo in the last email: I meant to write "doPost()" and not 
"do Post()"

On Tuesday, May 7, 2013 3:00:57 PM UTC-4, brac...@gmail.com wrote:
>
> I thought maybe this was an asynchronous problem or something similar, so 
> I modified the util.js to do this:
>
> function do Post(callback, data) {
>     $.post(callback, data).then(doSuccess, doFail);
>
>
>     function doSuccess(data) { alert('Success!'); }
>     function doFail(data) { alert('Failed!'); }
> }
>
> But it didn't solve the problem.
>
> On Tuesday, May 7, 2013 1:53:57 PM UTC-4, brac...@gmail.com wrote:
>>
>> I think something odd is going on. The Failed message never appears if I 
>> set breakpoints and step through the javascript in firebug. When I do this, 
>> I can see that the eventual post request has a status 200, but no success 
>> message is ever alerted.
>>
>> If I remove the breakpoints and let the program run without interruption, 
>> then I see the post request, but the status column is left blank. I'd see 
>> the Failed alert pop up in this case.
>>
>> Yet, in both cases, I see the my print statement being executed in the 
>> controller.
>>
>>
>>
>> On Tuesday, May 7, 2013 11:45:44 AM UTC-4, Anthony wrote:
>>>
>>> If you use the browser tools to inspect the request/response, what do 
>>> you see? Do you get a 200 status?
>>>
>>> On Tuesday, May 7, 2013 11:35:21 AM UTC-4, brac...@gmail.com wrote:
>>>>
>>>> No, add_item doesn't have an associated view with it. I tried doing 
>>>> just a "return" and also tried omitting the return statement entirely. 
>>>> jquery still tells me it's failed.
>>>>
>>>> On Monday, May 6, 2013 5:33:04 PM UTC-4, Anthony wrote:
>>>>
>>>>>
>>>>> 1. For some reason every click results in a javascript alert saying 
>>>>>> that it Failed, even though I can successfully do stuff with the data in 
>>>>>> the controller. Is there some sort of code I'm supposed to return 
>>>>>> through 
>>>>>> the controller to let jquery know that it's been successful?
>>>>>>
>>>>>
>>>>> Does the add_item() function have an associated view? If not, it may 
>>>>> be generating an error (when a function returns a dict(), web2py looks 
>>>>> for 
>>>>> an associated view to execute). Instead, you can just return nothing.
>>>>>  
>>>>>
>>>>>>
>>>>>> 2. To be safe, I'll sanitize the expected integers like so:
>>>>>>
>>>>>>     def add_item():
>>>>>>          # get json data as 'data' ...
>>>>>>          item_id = int(data['test']['item_id'])
>>>>>>          other_data = int(data['test']['some_detail'])
>>>>>>    
>>>>>>          # Insert that item_id and other_data into db...
>>>>>>    
>>>>>>     But if I expected a string, how would I sanitize that string 
>>>>>> before using it to do something with the database? Is there a safe 
>>>>>> practice 
>>>>>> for this type of approach of getting data from json?
>>>>>>
>>>>>
>>>>> web2py already does escaping to prevent SQL injection (assuming you 
>>>>> use the DAL, though not with .executesql()).
>>>>>
>>>>> Anthony 
>>>>>
>>>>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to