Solved

Run a php script with a form select

Posted on 2013-12-01
11
402 Views
Last Modified: 2013-12-03
Is it possible to have a php script called when a select is selected? Without a submit button?

How can I do this? Even if it takes ajax or something?
0
Comment
Question by:burnedfaceless
  • 6
  • 2
  • 2
  • +1
11 Comments
 
LVL 34

Expert Comment

by:Dan Craciun
ID: 39688446
You can use the onclick or onchange events for your select to make an ajax call.

No need for a submit button.

Here's how to call a js script on onchange:

var myDiv = document.getElementById("myDiv");
document.getElementById("mySelect").onchange = function(){
  your code here
}

HTH,
Dan
0
 

Author Comment

by:burnedfaceless
ID: 39688464
Cool
Can you provide an ajax example?

I already know JavaScript.
0
 
LVL 34

Accepted Solution

by:
Dan Craciun earned 500 total points
ID: 39688468
var myDiv = document.getElementById("myDiv");
document.getElementById("mySelect").onchange = someFunction(this);

function someFunction(object){  
    $.ajax({
        url: 'yourscript.php',
        data: 'content=' + object.value,
        cache: false,
        error: function(e){
            alert(e);
        },
        success: function(response){
            // A response to say if it's updated or not
            alert(response);
        }
    });  
}
0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
LVL 43

Expert Comment

by:Chris Stanyon
ID: 39688488
If you intend to use jQuery, then just bind the change event directly:

$('#mySelect').change(function() {
   $.ajax({
      url: 'myScript.php',
      type: 'post',
      data: { selectValue: $(this).val() }
   })
   .done(function(response) {
      //do something with response
   });
});

Open in new window

This will fire the AJAX call when an element with an ID of mySelect is changed. It will call a file called myScript.php and pass the value of the SELECT in the POST array as $_POST['selectValue']
0
 

Author Comment

by:burnedfaceless
ID: 39688537
Thanks, I'm about to pick up a book on AJAX. I just realized this will do a lot of things I was wondering about.
0
 
LVL 109

Expert Comment

by:Ray Paseur
ID: 39694111
Make a Google search for "Learning jQuery" and follow the links.  A book on AJAX would have been a good idea in 2002.  The whole industry has gone beyond that now and jQuery powers a great many AJAX requests.  You might also be interested in "bootstrap.js"
0
 

Author Comment

by:burnedfaceless
ID: 39694184
Thanks I'll read AJAX and visit links and determine what fits our needs.
0
 

Author Comment

by:burnedfaceless
ID: 39694187
I'll examine the js file
0
 

Author Comment

by:burnedfaceless
ID: 39694192
But again Ray this is debugging the form distortion so I'm contingent upon loading a php echo
0
 
LVL 109

Expert Comment

by:Ray Paseur
ID: 39694245
this is debugging the form distortion so I'm contingent upon loading a php echo
It's quotes like that which make me want to lead you toward learning the fundamentals.  Web development is like most technologies -- it has its own language.  Without the language, you're crippled and with it you'll make progress in leaps and bounds but only after you learn the vocabulary and syntax.

One really good way to learn a language is by "immersion" so if you can find a local web development user group, I encourage you to join, make presentations, participate in code reviews and generally become active.

Best of luck with your project, ~Ray
0
 

Author Comment

by:burnedfaceless
ID: 39694373
Ray I'm right on this. I will accept your advice any day of the week but this is the only way to do what my boss asked.

JavaScript writing html is gimmicky.

Php is great because you can keep the double quotes.

Your intentions are good I know, but this is the easiest solution to the problem.

Thanks for your input ~ Brian
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Introduction HTML checkboxes provide the perfect way for a web developer to receive client input when the client's options might be none, one or many.  But the PHP code for processing the checkboxes can be confusing at first.  What if a checkbox is…
Things That Drive Us Nuts Have you noticed the use of the reCaptcha feature at EE and other web sites?  It wants you to read and retype something that looks like this.Insanity!  It's not EE's fault - that's just the way reCaptcha works.  But it is …
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

820 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