calling variable in onchange function

Discussion in 'Javascript' started by R.G. Vervoort, Apr 14, 2004.

  1. I am using a javafunction (onclick in select) in which i am calling a
    function in php (thats why i send this to both php and javascript
    newsgroups).

    in the onclick i call the function "Place_Selected" with the value from the
    select (naam_keuze.value)

    in the function the value becomes the $zoek_id and searches in the database
    for the record with the id of $zoek_id

    the naam_keuze.value does not give the value to $zoek_id

    When i replace naam_keuze.value for a number (15) i works great.

    WHAT AM I DOING WRONG?


    This is my code



    Function Place_Selected($zoek_id)
    {
    include("data.php");
    $link=mysql_connect($db_host, $username, $password) or die("Database
    error!");
    mysql_select_db($database , $link)or die("Couldn't open $db:
    ".mysql_error());
    $sql=mysql_query("SELECT * FROM specialismen WHERE id='$zoek_id'");

    if ($sql)
    {
    while($blah2 = mysql_fetch_array($sql))
    {
    $newsid = $blah2['id'];
    $sticky = $blah2['naam'];
    }
    }
    return("document.form.achternaam.value='$sticky'");
    }


    <select id=naam_keuze size=1 name=keuze style=visibility:hidden
    onchange=".Place_Selected('naam_keuze.value').";document.form.voornaam.value
    =naam_keuze.value;>
    <option value=0>Kies
    $options
    </select>

    Thanks for suggestions

    roy
     
    R.G. Vervoort, Apr 14, 2004
    #1
    1. Advertising

  2. R.G. Vervoort wrote:

    > I am using a javafunction (onclick in select) in which i am calling a
    > function in php (thats why i send this to both php and javascript
    > newsgroups).
    >
    > in the onclick i call the function "Place_Selected" with the value from the
    > select (naam_keuze.value)
    >
    > in the function the value becomes the $zoek_id and searches in the database
    > for the record with the id of $zoek_id
    >
    > the naam_keuze.value does not give the value to $zoek_id
    >
    > When i replace naam_keuze.value for a number (15) i works great.
    >
    > WHAT AM I DOING WRONG?
    >
    >
    > This is my code
    >
    >
    >
    > Function Place_Selected($zoek_id)
    > {
    > include("data.php");
    > $link=mysql_connect($db_host, $username, $password) or die("Database
    > error!");
    > mysql_select_db($database , $link)or die("Couldn't open $db:
    > ".mysql_error());
    > $sql=mysql_query("SELECT * FROM specialismen WHERE id='$zoek_id'");
    >
    > if ($sql)
    > {
    > while($blah2 = mysql_fetch_array($sql))
    > {
    > $newsid = $blah2['id'];
    > $sticky = $blah2['naam'];
    > }
    > }
    > return("document.form.achternaam.value='$sticky'");
    > }
    >
    >
    > <select id=naam_keuze size=1 name=keuze style=visibility:hidden
    > onchange=".Place_Selected('naam_keuze.value').";document.form.voornaam.value
    > =naam_keuze.value;>
    > <option value=0>Kies
    > $options
    > </select>
    >
    > Thanks for suggestions
    >
    > roy
    >
    >


    I don't see how it could work, even with a numeric value of 15... What
    version of PHP are you using?

    Here's why I think it shouldn't work...

    Javascript is client side - PHP is server side... thus, you attempt to
    call Place_Selected (PHP code) in your onChange event - This won't
    happen unless you hava a javascript function with that name that submits
    the form contents to the server via a FORM POST or GET...

    Also... The value for your select box should I believe end up in
    $_POST['keuze'] in PHP when the form is submitted...

    And... return("document.form.achternaam.value='$sticky'");
    Again, you've got your knickers in a twist - the return statement will
    not return a value into achternaam like I think you expect... I really
    think you are misunderstanding how the two technologies fit together...

    If you are sure that your test will work when you enter 15 as a test
    value - try different numbers to confirm that test works - If it does,
    then I think you've not provided the entire code here for me (perhaps
    anyone else) to give a full and proper answer/suggestion.

    Does any of the above help?
    randelld
     
    Reply Via Newsgroup, Apr 15, 2004
    #2
    1. Advertising

  3. it works great, as long as the number (15 or ...) is an id in the database.
    i just will not accept the "." (dot) in the line



    "Reply Via Newsgroup" <> schreef in bericht
    news:J9kfc.121495$Ig.78826@pd7tw2no...
    > R.G. Vervoort wrote:
    >
    > > I am using a javafunction (onclick in select) in which i am calling a
    > > function in php (thats why i send this to both php and javascript
    > > newsgroups).
    > >
    > > in the onclick i call the function "Place_Selected" with the value from

    the
    > > select (naam_keuze.value)
    > >
    > > in the function the value becomes the $zoek_id and searches in the

    database
    > > for the record with the id of $zoek_id
    > >
    > > the naam_keuze.value does not give the value to $zoek_id
    > >
    > > When i replace naam_keuze.value for a number (15) i works great.
    > >
    > > WHAT AM I DOING WRONG?
    > >
    > >
    > > This is my code
    > >
    > >
    > >
    > > Function Place_Selected($zoek_id)
    > > {
    > > include("data.php");
    > > $link=mysql_connect($db_host, $username, $password) or die("Database
    > > error!");
    > > mysql_select_db($database , $link)or die("Couldn't open $db:
    > > ".mysql_error());
    > > $sql=mysql_query("SELECT * FROM specialismen WHERE id='$zoek_id'");
    > >
    > > if ($sql)
    > > {
    > > while($blah2 = mysql_fetch_array($sql))
    > > {
    > > $newsid = $blah2['id'];
    > > $sticky = $blah2['naam'];
    > > }
    > > }
    > > return("document.form.achternaam.value='$sticky'");
    > > }
    > >
    > >
    > > <select id=naam_keuze size=1 name=keuze style=visibility:hidden
    > >

    onchange=".Place_Selected('naam_keuze.value').";document.form.voornaam.value
    > > =naam_keuze.value;>
    > > <option value=0>Kies
    > > $options
    > > </select>
    > >
    > > Thanks for suggestions
    > >
    > > roy
    > >
    > >

    >
    > I don't see how it could work, even with a numeric value of 15... What
    > version of PHP are you using?
    >
    > Here's why I think it shouldn't work...
    >
    > Javascript is client side - PHP is server side... thus, you attempt to
    > call Place_Selected (PHP code) in your onChange event - This won't
    > happen unless you hava a javascript function with that name that submits
    > the form contents to the server via a FORM POST or GET...
    >
    > Also... The value for your select box should I believe end up in
    > $_POST['keuze'] in PHP when the form is submitted...
    >
    > And... return("document.form.achternaam.value='$sticky'");
    > Again, you've got your knickers in a twist - the return statement will
    > not return a value into achternaam like I think you expect... I really
    > think you are misunderstanding how the two technologies fit together...
    >
    > If you are sure that your test will work when you enter 15 as a test
    > value - try different numbers to confirm that test works - If it does,
    > then I think you've not provided the entire code here for me (perhaps
    > anyone else) to give a full and proper answer/suggestion.
    >
    > Does any of the above help?
    > randelld
     
    R.G. Vervoort, Apr 15, 2004
    #3
  4. R.G. Vervoort

    Savut Guest

    Place_Selected('naam_keuze.value')

    you have passed the value of a javascript, this can't work, you have to
    explicitely write the value or a php variable, because you are in a php
    statement (server side, so no javascript value here).

    Savut

    "R.G. Vervoort" <> wrote in message
    news:407dd2d3$0$570$4all.nl...
    > it works great, as long as the number (15 or ...) is an id in the
    > database.
    > i just will not accept the "." (dot) in the line
    >
    >
    >
    > "Reply Via Newsgroup" <> schreef in bericht
    > news:J9kfc.121495$Ig.78826@pd7tw2no...
    >> R.G. Vervoort wrote:
    >>
    >> > I am using a javafunction (onclick in select) in which i am calling a
    >> > function in php (thats why i send this to both php and javascript
    >> > newsgroups).
    >> >
    >> > in the onclick i call the function "Place_Selected" with the value from

    > the
    >> > select (naam_keuze.value)
    >> >
    >> > in the function the value becomes the $zoek_id and searches in the

    > database
    >> > for the record with the id of $zoek_id
    >> >
    >> > the naam_keuze.value does not give the value to $zoek_id
    >> >
    >> > When i replace naam_keuze.value for a number (15) i works great.
    >> >
    >> > WHAT AM I DOING WRONG?
    >> >
    >> >
    >> > This is my code
    >> >
    >> >
    >> >
    >> > Function Place_Selected($zoek_id)
    >> > {
    >> > include("data.php");
    >> > $link=mysql_connect($db_host, $username, $password) or die("Database
    >> > error!");
    >> > mysql_select_db($database , $link)or die("Couldn't open $db:
    >> > ".mysql_error());
    >> > $sql=mysql_query("SELECT * FROM specialismen WHERE id='$zoek_id'");
    >> >
    >> > if ($sql)
    >> > {
    >> > while($blah2 = mysql_fetch_array($sql))
    >> > {
    >> > $newsid = $blah2['id'];
    >> > $sticky = $blah2['naam'];
    >> > }
    >> > }
    >> > return("document.form.achternaam.value='$sticky'");
    >> > }
    >> >
    >> >
    >> > <select id=naam_keuze size=1 name=keuze style=visibility:hidden
    >> >

    > onchange=".Place_Selected('naam_keuze.value').";document.form.voornaam.value
    >> > =naam_keuze.value;>
    >> > <option value=0>Kies
    >> > $options
    >> > </select>
    >> >
    >> > Thanks for suggestions
    >> >
    >> > roy
    >> >
    >> >

    >>
    >> I don't see how it could work, even with a numeric value of 15... What
    >> version of PHP are you using?
    >>
    >> Here's why I think it shouldn't work...
    >>
    >> Javascript is client side - PHP is server side... thus, you attempt to
    >> call Place_Selected (PHP code) in your onChange event - This won't
    >> happen unless you hava a javascript function with that name that submits
    >> the form contents to the server via a FORM POST or GET...
    >>
    >> Also... The value for your select box should I believe end up in
    >> $_POST['keuze'] in PHP when the form is submitted...
    >>
    >> And... return("document.form.achternaam.value='$sticky'");
    >> Again, you've got your knickers in a twist - the return statement will
    >> not return a value into achternaam like I think you expect... I really
    >> think you are misunderstanding how the two technologies fit together...
    >>
    >> If you are sure that your test will work when you enter 15 as a test
    >> value - try different numbers to confirm that test works - If it does,
    >> then I think you've not provided the entire code here for me (perhaps
    >> anyone else) to give a full and proper answer/suggestion.
    >>
    >> Does any of the above help?
    >> randelld

    >
    >
     
    Savut, Apr 15, 2004
    #4
  5. ok

    I can see that it is a problem (for me)

    but....

    I can call a php function (with the ". ...... .") in the onchange (wich is
    javascript as i believe), is it not possible to call the javascript into a
    php function or to decalare a variable and the call it in the function
    (since it is possible to put a variable in the function wich works).

    thanks anyway

    Roy



    "Savut" <> schreef in bericht
    news:GjAfc.27047$...
    > Place_Selected('naam_keuze.value')
    >
    > you have passed the value of a javascript, this can't work, you have to
    > explicitely write the value or a php variable, because you are in a php
    > statement (server side, so no javascript value here).
    >
    > Savut
    >
    > "R.G. Vervoort" <> wrote in message
    > news:407dd2d3$0$570$4all.nl...
    > > it works great, as long as the number (15 or ...) is an id in the
    > > database.
    > > i just will not accept the "." (dot) in the line
    > >
    > >
    > >
    > > "Reply Via Newsgroup" <> schreef in bericht
    > > news:J9kfc.121495$Ig.78826@pd7tw2no...
    > >> R.G. Vervoort wrote:
    > >>
    > >> > I am using a javafunction (onclick in select) in which i am calling a
    > >> > function in php (thats why i send this to both php and javascript
    > >> > newsgroups).
    > >> >
    > >> > in the onclick i call the function "Place_Selected" with the value

    from
    > > the
    > >> > select (naam_keuze.value)
    > >> >
    > >> > in the function the value becomes the $zoek_id and searches in the

    > > database
    > >> > for the record with the id of $zoek_id
    > >> >
    > >> > the naam_keuze.value does not give the value to $zoek_id
    > >> >
    > >> > When i replace naam_keuze.value for a number (15) i works great.
    > >> >
    > >> > WHAT AM I DOING WRONG?
    > >> >
    > >> >
    > >> > This is my code
    > >> >
    > >> >
    > >> >
    > >> > Function Place_Selected($zoek_id)
    > >> > {
    > >> > include("data.php");
    > >> > $link=mysql_connect($db_host, $username, $password) or die("Database
    > >> > error!");
    > >> > mysql_select_db($database , $link)or die("Couldn't open $db:
    > >> > ".mysql_error());
    > >> > $sql=mysql_query("SELECT * FROM specialismen WHERE id='$zoek_id'");
    > >> >
    > >> > if ($sql)
    > >> > {
    > >> > while($blah2 = mysql_fetch_array($sql))
    > >> > {
    > >> > $newsid = $blah2['id'];
    > >> > $sticky = $blah2['naam'];
    > >> > }
    > >> > }
    > >> > return("document.form.achternaam.value='$sticky'");
    > >> > }
    > >> >
    > >> >
    > >> > <select id=naam_keuze size=1 name=keuze style=visibility:hidden
    > >> >

    > >

    onchange=".Place_Selected('naam_keuze.value').";document.form.voornaam.value
    > >> > =naam_keuze.value;>
    > >> > <option value=0>Kies
    > >> > $options
    > >> > </select>
    > >> >
    > >> > Thanks for suggestions
    > >> >
    > >> > roy
    > >> >
    > >> >
    > >>
    > >> I don't see how it could work, even with a numeric value of 15... What
    > >> version of PHP are you using?
    > >>
    > >> Here's why I think it shouldn't work...
    > >>
    > >> Javascript is client side - PHP is server side... thus, you attempt to
    > >> call Place_Selected (PHP code) in your onChange event - This won't
    > >> happen unless you hava a javascript function with that name that

    submits
    > >> the form contents to the server via a FORM POST or GET...
    > >>
    > >> Also... The value for your select box should I believe end up in
    > >> $_POST['keuze'] in PHP when the form is submitted...
    > >>
    > >> And... return("document.form.achternaam.value='$sticky'");
    > >> Again, you've got your knickers in a twist - the return statement will
    > >> not return a value into achternaam like I think you expect... I really
    > >> think you are misunderstanding how the two technologies fit together...
    > >>
    > >> If you are sure that your test will work when you enter 15 as a test
    > >> value - try different numbers to confirm that test works - If it does,
    > >> then I think you've not provided the entire code here for me (perhaps
    > >> anyone else) to give a full and proper answer/suggestion.
    > >>
    > >> Does any of the above help?
    > >> randelld

    > >
    > >

    >
     
    R.G. Vervoort, Apr 16, 2004
    #5
  6. R.G. Vervoort wrote:
    > ok
    >
    > I can see that it is a problem (for me)
    >
    > but....
    >
    > I can call a php function (with the ". ...... .") in the onchange (wich is
    > javascript as i believe), is it not possible to call the javascript into a
    > php function or to decalare a variable and the call it in the function
    > (since it is possible to put a variable in the function wich works).
    >
    > thanks anyway
    >
    > Roy
    >


    LET US GET THIS STRAIGHT (and I'm sorry I'm shouting here) BUT YOU
    CANNOT UNDER NO CIRCUMSTANCES CALL PHP CODE USING AN ONCHANGE EVENT
    USING THE CODE YOU HAVE IN YOUR ORIGINAL POST (I've copied a line of the
    offending code below).

    <select id=naam_keuze size=1 name=keuze style=visibility:hidden
    onchange=".Place_Selected('naam_keuze.value').";document.form.voornaam.value
    =naam_keuze.value;>
    <option value=0>Kies
    $options
    </select>

    The code contained in the onChange event is expected to be javascript -
    NOT PHP.

    I'll say that again...

    The code contained in the onChange event is expected to be javascript -
    NOT PHP.


    Your web browser does not process PHP - It can use form methods GET and
    POST to communicate with a server, true, but the methods you have used
    above WILL NOT WORK.

    I'm not saying MIGHT - I'm not saying MAYBE - I'm not saying its a grey
    area... I AM DEFINITE, I HAVE NO DOUBT.... PHP is server side - an
    onChange event only has access to client side actions. The only link
    between the two is a POST or a GET method and from the code I see in
    your original post, I don't see this occuring.

    Unless you make your code available, either here in a post or via a url,
    folk are unlikely to be able to help you. You are wasteing your time.

    You mention that some numeric input works for you and I say that is
    rubbish... thrash... garbage. If you are adamant that it does work then
    you are either mistaken, have a bug in your code and getting the result
    from something other than PHP or you have not provided enough of source
    code for anyone here to help to show how the data is being sent from
    your client, to the server, and back, to give you this result you claim.

    I honestly don't mean to offend, but while you persisted in making a
    false claim and I needed to clear it up... I'll honestly do my best to
    help though...

    regards
    randelld
     
    Reply Via Newsgroup, Apr 16, 2004
    #6
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Zeebra3
    Replies:
    5
    Views:
    5,122
    pelegk1
    Jul 15, 2007
  2. Andreas Lagemann
    Replies:
    8
    Views:
    485
    Mike Wahler
    Jan 10, 2005
  3. tiwy
    Replies:
    0
    Views:
    445
  4. S?ren Gammelmark
    Replies:
    1
    Views:
    1,893
    Eric Sosman
    Jan 7, 2005
  5. Navaneeth
    Replies:
    4
    Views:
    553
    Kenny McCormack
    Nov 20, 2010
Loading...

Share This Page