Parse error: parse error, unexpected T_VAR in
e:\domains\i\iddsoftware.co.uk\user\htdocs\QuestionDB\Questions.php on line
42
line 42 being
var mainselect = document.FormName.MainCategory;
Im fairly new to php and dont use Java upto now. Can anyone see where I ve
gone wrong
<?php
session_start();
include("../include/connection.php");
include("../Secure/login.php");
$Heading= 'QUESTION SELECTOR';
$Menu='<a href="../Secure/logout.php">Logout</a><br>';
include 'HeadQuest.php';
$Query = "SELECT SubjectNo, SubjectDesc, StatusID FROM Subjects WHERE
StatusID = 1 ORDER BY SubjectDesc ASC";
$Result = mysql_query( $Query, $conn );
?>
<HTML>
<HEAD>
<SCRIPT language="JavaScript">
function BodyLoad()
{
var select = document.FormName.MainCategory;
select.options[0] = new Option("Choose One");
select.options[0].value = 0;
<?PHP
$ctr = 1;
While( $Row = mysql_fetch_array($Result) ) {
echo "select.options[".$ctr."] = new
Option(\"".$Row['SubjectNo']."\");\n";
echo "select.options[".$ctr."].value = \"".$Row['SubjectNo']."\";\n";
$ctr++;
}
?>
}
function Fill_Sub()
{
<?PHP
var mainselect = document.FormName.MainCategory;
var subselect = document.FormName.SubCategory;
if( mainselect.options[mainselect.selectedIndex].value != 0 ) {
subselect.length = 0;
}
$Query = "SELECT SubjectNo, SubjectDesc, StatusID FROM Subjects WHERE
StatusID = 1 ORDER BY SubjectDesc ASC";
$Result = mysql_query($Query, $conn );
while( $Row = mysql_fetch_array($Result) ) {
?>
if( mainselect.options[mainselect.selectedIndex].text == "<?PHP echo
$Row['SubjectNo']; ?>" ) {
<?PHP
$Query2 = "SELECT TopicID, TopicDesc, KS, SubjectNo FROM ttopic WHERE
StatusID = 1 AND SubjectNo = ".$row['SubjectNo']." ORDER BY TopicDesc ASC";
$Result2 = mysql_query($Query2, $conn );
$ctr = 0;
While( $Row2 = mysql_fetch_array($Result2) ) {
echo "subselect.options[".$ctr."] = new
Option(\"".$Row2['TopicID']."\");\n";
echo "subselect.options[".$ctr."].value =
\"".$Row2['TopicID']."\";\n";
$ctr++;
}
?>
}
}
<?PHP
}
mysql_close($conn);
?>
}
</SCRIPT>
</HEAD>
<BODY onload="BodyLoad();">
<FORM name="FormName" method="POST" action="">
<TABLE border="1">
<TR>
<TD>Main Category</TD>
<TD>Sub Category</TD>
</TR>
<TR>
<TD>
<SELECT name="MainCategory" onchange="Fill_Sub();">
</SELECT>
</TD>
<TD>
<SELECT name="SubCategory" size="4">
</SELECT>
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
> function Fill_Sub()
> {
>
> <?PHP
This is in the wrong spot...
> var mainselect = document.FormName.MainCategory;
> var subselect = document.FormName.SubCategory;
>
> if( mainselect.options[mainselect.selectedIndex].value != 0 ) {
>
> subselect.length = 0;
> }
This is where the "<?php" should be...
> $Query = "SELECT SubjectNo, SubjectDesc, StatusID FROM Subjects WHERE
> StatusID = 1 ORDER BY SubjectDesc ASC";
> $Result = mysql_query($Query, $conn );
<snip>
--
Justin Koivisto, ZCE - jus...@koivi.com
http://koivi.com
echo "subselect.options[".$ctr."].value =
\"".$Row2['TopicID']."\";\n";
my debugger is saying
if( mainselect.options[mainselect.selectedIndex].value == "12" ) {
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result
resource in e:\domains\i\mysite\user\htdocs\myfolder\Questions.php on line
67
} }
It would seem that there is a problem with
mainselect.options[mainselect.selectedIndex].value
Ian
"Justin Koivisto" <jus...@koivi.com> wrote in message
news:uPidnaxdQ-f...@onvoy.com...
Or there's something wrong with the query. You blindly start a while
loop without first checking to see if the query has succeeded. In this
case, if $Result isn't a valid result resource, the query failed for
some reason... to help debug, use mysql_error() to see what the problem is.
When posting code, post what is received at the client (use view
source). The PHP side should be discussed in a PHP forum.
Once you have sorted out what the client should get, then you can work
out how to generate it.
> Parse error: parse error, unexpected T_VAR in
> e:\domains\i\iddsoftware.co.uk\user\htdocs\QuestionDB\Questions.php on line
> 42
>
> line 42 being
> var mainselect = document.FormName.MainCategory;
>
> Im fairly new to php and dont use Java upto now. Can anyone see where I ve
> gone wrong
Asking PHP questions in a JavaScript group? Thinking JavaScript is
Java? ;-)
> <?php
> session_start();
> include("../include/connection.php");
> include("../Secure/login.php");
> $Heading= 'QUESTION SELECTOR';
> $Menu='<a href="../Secure/logout.php">Logout</a><br>';
> include 'HeadQuest.php';
>
>
> $Query = "SELECT SubjectNo, SubjectDesc, StatusID FROM Subjects WHERE
> StatusID = 1 ORDER BY SubjectDesc ASC";
> $Result = mysql_query( $Query, $conn );
>
> ?>
>
> <HTML>
> <HEAD>
> <SCRIPT language="JavaScript">
The language attribute is deprecated, type is required:
<script type="text/javascript">
>
> function BodyLoad()
> {
>
> var select = document.FormName.MainCategory;
>
> select.options[0] = new Option("Choose One");
> select.options[0].value = 0;
IE has issues with setting option attributes this way. Set all the
values in one go (hey, saves a line of code too):
select.options[0] = new Option("Choose One", "0", true, true);
sets the first option to have text 'Choose One', value as '0', default
selected as true and currently selected as true.
>
> <?PHP
>
> $ctr = 1;
> While( $Row = mysql_fetch_array($Result) ) {
> echo "select.options[".$ctr."] = new
> Option(\"".$Row['SubjectNo']."\");\n";
> echo "select.options[".$ctr."].value = \"".$Row['SubjectNo']."\";\n";
> $ctr++;
> }
> ?>
> }
>
> function Fill_Sub()
> {
>
> <?PHP
> var mainselect = document.FormName.MainCategory;
> var subselect = document.FormName.SubCategory;
>
> if( mainselect.options[mainselect.selectedIndex].value != 0 ) {
The value of a form control is always returned as a string, so be
careful when evaluating it. In this case it is OK because the string
'0' and number 0 will be evaluated as you expect, but sometimes it will
trip you up.
>
> subselect.length = 0;
> }
[...]
> <TD>
> <SELECT name="SubCategory" size="4">
> </SELECT>
> </TD>
A select element with no options is invalid HTML.
[...]
--
Rob
It was - 4 of them.
> Asking PHP questions in a JavaScript group? Thinking JavaScript is
> Java? ;-)
More like someone not sure if it was a php or js thing. The post went to
4 php groups, and one js group...
The script here is modified from a previous script where I have not
atempted to use java to update a second dropdownmenu/listbox (havent decided
which to use yet) from the item selected in the first. In the previous
script I use the exact same sqls which work fine.
Go here to see these SQLs working in the dropdown lists
http://www.iddsoftware.co.uk/QuestionDB/QuestionsBrowse.php
Ian
"Justin Koivisto" <jus...@koivi.com> wrote in message
news:XeidnVQDys8rNh7e...@onvoy.com...