Solved

Saving form data using ajax, etc

Posted on 2011-09-17
5
352 Views
Last Modified: 2012-05-12
I've been trying to find some examples on how to save form data to a mysql database with javascript & php but am really struggling to find any step by step good tutorials on what to do.

I found this one:

http://woork.blogspot.com/2007/10/insert-record-into-database-using-ajax.html

but it seems from the comments that it's open to hacking and it's over 4 years old now.

I also found this one:

http://www.myphpetc.com/2010/01/save-to-database-via-ajax-using-jquery.html

but I don't like how it goes to Google to get its javascript. If Google remove that link, then my script would be done which I obviously wouldn't want.

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
      google.load("jquery", "1.4");
</script>
0
Comment
Question by:PeterErhard
5 Comments
 
LVL 5

Expert Comment

by:Eduardo Goicovich
ID: 36554096
0
 
LVL 82

Accepted Solution

by:
leakim971 earned 500 total points
ID: 36554111
you can replace :
<script type="text/javascript" src="http://www.google.com/jsapi"></script> 
<script type="text/javascript"> 
	google.load("jquery", "1.4");
</script> 

Open in new window

by :
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.min.js"></script> 

Open in new window

or by :
<script type="text/javascript" src="/path/to/your/own/js/jquery-1.4.min.js"></script> 

Open in new window

0
 
LVL 82

Expert Comment

by:hielo
ID: 36554219
>>I found this one:
>>http://woork.blogspot.com/2007/10/insert-record-into-database-using-ajax.html
>>but it seems from the comments that it's open to hacking
OK, but to address that issue, just make sure that every value that you are sending FROM the client/browser destined TO the db gets escaped with mysql_real_escape_string():

On that tutorial

$url= $_GET['site_url'];
$sitename= $_GET['site_name'];

would become:

$url= mysql_real_escape_string($_GET['site_url'] );
$sitename= mysql_real_escape_string($_GET['site_name']);


In case it's not obvious, you  will also need a file named "config.php" which will basically have the following:
<?php
//be sure to fill the following four variables.  If you are running PHP AND mysql
//on the same machine, then set $DB_SERVER to localhost
$DB_SERVER="";
$DB_USERNAME="";
$DB_PASSWORD="";
$DB_NAME="Your Database name goes here";

mysql_connect($DB_SERVER,$DB_USERNAME, $DB_PASSWORD) or die( mysql_error() );
mysql_select_db($DB_NAME) or die( mysql_error() );
?>


>>I also found this one:
>>http://www.myphpetc.com/2010/01/save-to-database-via-ajax-using-jquery.html
>>but I don't like how it goes to Google to get its javascript
That shouldn't be a problem at all. Typically, its expected for you (the tutorial reader) to download a copy of the JS file to your own machine and link your page to YOUR own copy of the js file.

BTW: that snippet of code that links to google server is used to simply "import" a copy of the jquery library.  So you can just go to jquery.com and download your own copy of jquery.
0
 

Expert Comment

by:radugheorghies
ID: 36554430
hmmm

You need to complete some steps:

1. Create a javascript function that access the php file
You can use this function:

function saveindatabase(your_variable){
	jQuery.ajaxSetup({async:false});
	var file='';
	file='your_file.php?code='+your_variable;	
	jQuery.get(file,function(fileContents){
        //you can execute a javascript code here ex: alert or ....
        });
	jQuery.ajaxSetup({async:true});
}

Open in new window


2. In your php file you can read variable
code
: $myvar=$_GET['code'];
You can transmit morevariable to php.

3. For save to database in php read php docummentation on php.org, or ask.com

0
 

Author Closing Comment

by:PeterErhard
ID: 36555192
Thanks a lot :)
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

SASS allows you to treat your CSS code in a more OOP way. Let's have a look on how you can structure your code in order for it to be easily maintained and reused.
This article discusses how to create an extensible mechanism for linked drop downs.
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…
Learn how to create flexible layouts using relative units in CSS.  New relative units added in CSS3 include vw(viewports width), vh(viewports height), vmin(minimum of viewports height and width), and vmax (maximum of viewports height and width).

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question