calling variable in onchange function

R

R.G. Vervoort

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

Reply Via Newsgroup

R.G. Vervoort said:
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

R.G. Vervoort

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 said:
R.G. Vervoort said:
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
 
S

Savut

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 said:
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 said:
R.G. Vervoort said:
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

R.G. Vervoort

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 said:
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 said:
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 said:
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

Reply Via Newsgroup

R.G. Vervoort said:
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
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,767
Messages
2,569,570
Members
45,045
Latest member
DRCM

Latest Threads

Top