Forum Moderators: coopster
The errors are:
Notice: Undefined variable: sel_subj in C:\wamp\www\widget_corp\content.php on line 37
Notice: Undefined variable: sel_page in C:\wamp\www\widget_corp\content.php on line 38
The source code is:
<?php require_once("includes/connection.php"); ?>
<?php require_once("includes/functions.php"); ?>
<?php
if (isset($_GET['subj'])) {
$sel_subj = $_GET['subj'];
$sel_subj = "";
} elseif (isset($_GET['page'])) {
$sel_page = $_GET['page'];
$sel_page = "";
} else {
$sel_subj = "";
$sel_page = "";
}
?>
<?php include("includes/header.php"); ?>
<table id="structure">
<tr>
<td id="navigation">
<ul class="subjects">
<?php
$subject_set = get_all_subjects();
while ($subject = mysql_fetch_array($subject_set)) {
echo "<li><a href=\"content.php?subj=" . urlencode($subject["id"]) . "\">{$subject["menu_name"]}</a> </li>";
$page_set = get_pages_for_subject($subject["id"]);
echo "<ul class=\"pages\">";
while ($page = mysql_fetch_array($page_set)) {
echo "<li><a href=\"content.php?page=" . urlencode($page["id"]) . "\"> {$page["menu_name"]}</a> </li>";
}
echo"</ul>";
}
?>
</ul>
</td>
<td id="page">
<h2>Content Area</h2>
<?php echo $sel_subj ; ?><br />
<?php echo $sel_page ; ?><br />
</td>
</tr>
</table>
<?php require("includes/footer.php"); ?>
Could somebody help me please?
Thank you
<?php require_once("includes/connection.php"); ?>
<?php require_once("includes/functions.php"); ?>
<?php
error_reporting(E_ERROR ¦ E_WARNING ¦ E_PARSE);
if (isset($_GET['subj'])) {
$sel_subj = $_GET['subj'];
$sel_subj = "";
} elseif (isset($_GET['page'])) {
$sel_page = $_GET['page'];
$sel_page = "";
} else {
$sel_subj = "";
$sel_page = "";
}
?>
<?php include("includes/header.php"); ?>
<table id="structure">
<tr>
<td id="navigation">
<ul class="subjects">
<?php
$subject_set = get_all_subjects();
while ($subject = mysql_fetch_array($subject_set)) {
echo "<li><a href=\"content.php?subj=" . urlencode($subject["id"]) . "\">{$subject["menu_name"]}</a> </li>";
$page_set = get_pages_for_subject($subject["id"]);
echo "<ul class=\"pages\">";
while ($page = mysql_fetch_array($page_set)) {
echo "<li><a href=\"content.php?page=" . urlencode($page["id"]) . "\"> {$page["menu_name"]}</a> </li>";
}
echo"</ul>";
}
?>
</ul>
</td>
<td id="page">
<h2>Content Area</h2>
<?php echo $sel_subj ; ?><br />
<?php echo $sel_page ; ?><br />
</td>
</tr>
</table>
I don't think you understand what your problem is. You are trying to echo $_GET['subj'] and $_GET['page']; The notice is telling you that they are undefined, meaning they are nothing. Whatever url this page is at, if page and subj need to be something your url should look like
www.somesite.com/index.php?subj=yourvaluehere&page=yourothervalue
It is saying the get variables are not there. Where are they defined.
PAGES
id subject_id menu_name position visible content
1 1 History 1 1 comments
2 1 Our Mission 2 1 comments
3 2 Widget 1 1 comments
SUBJECTS
id menu_name position visible
1 About Widget Corp 1 1
2 Products 2 1
3 Services 3 1
HTML
index....is empty, so basic html file
PHP<?php require_once("includes/connection.php"); ?>
<?php require_once("includes/functions.php"); ?>
<?php
if (isset($_GET['subj'])) {
$sel_subj = $_GET['subj'];
$sel_subj = ""; //I tried without this line
} elseif (isset($_GET['page'])) {
$sel_page = $_GET['page'];
$sel_page = ""; //I tried without this line
} else {
$sel_subj = "";
$sel_page = "";
}
?>
<?php include("includes/header.php"); ?>
<table id="structure">
<tr>
<td id="navigation">
<ul class="subjects">
<?php
$subject_set = get_all_subjects();
while ($subject = mysql_fetch_array($subject_set)) {
echo "<li><a href=\"content.php?subj=" . urlencode($subject["id"]) . "\">{$subject["menu_name"]}</a> </li>";
$page_set = get_pages_for_subject($subject["id"]);
echo "<ul class=\"pages\">";
while ($page = mysql_fetch_array($page_set)) {
echo "<li><a href=\"content.php?page=" . urlencode($page["id"]) . "\"> {$page["menu_name"]}</a> </li>";
}
echo"</ul>";
}
?>
</ul>
</td>
<td id="page">
<h2>Content Area</h2>
<?php echo $sel_subj ; ?><br />
<?php echo $sel_page ; ?><br />
</td>
</tr>
</table>
<?php require("includes/footer.php"); ?>
I have also stylesheets, which I guess are not important in this context. Footer + header + constants, again not important for my errors +
FUNCTIONS
<?php
//This file is the place to store all basic functions
function confirm_query($result_set) {
if(!$result_set) {
die("Database connection failed:" . mysql_error());
}
}
function get_all_subjects() {
global $connection;
$query = "SELECT *
FROM subjects
ORDER BY position ASC";
$subject_set = mysql_query($query, $connection);
confirm_query($subject_set);
return $subject_set;
}
function get_pages_for_subject($subject_id) {
global $connection;
$query = "SELECT *
FROM pages
WHERE subject_id={$subject_id}
ORDER BY position ASC";
$page_set = mysql_query($query, $connection);
confirm_query($page_set);
return $page_set;
}
?>
<?php
if (isset($_GET['subj'])) {
$sel_subj = $_GET['subj'];
$sel_subj = ""; //I tried without this line
} elseif (isset($_GET['page'])) {
$sel_page = $_GET['page'];
$sel_page = ""; //I tried without this line
} else {
$sel_subj = "";
$sel_page = "";
}
?>
with
<?php
if (isset($_GET['subj'])) {
$sel_subj = $_GET['subj'];
$sel_subj = ""; //I tried without this line
} elseif (isset($_GET['page'])) {
$sel_page = $_GET['page'];
$sel_page = ""; //I tried without this line
} else {
$sel_subj = "";
$sel_page = "";
var_dump($_GET);
}
?>
and post the output
}
?>
//if we do a var dump here we will see all of the $_GET data
//we will not see anything on the page load because we
//haven't submitted any data yet. after we submit data this will echo
//stuff
var_dump($_GET);
?>
<form name = "myForm" method="get">
<input type = "text" name = "myText">
<input type = "text" name = "myText2">
<input type = "submit" value = "submit" name = "submit">
</form>
<?php
if(isset($_GET['submit'])){
//myText is the name of the text box
echo("text 1 = {$_GET['myText']} <br>text 2 = {$_GET['myText2']}");
}//if isset
?>
</html>
What to do know?
How I can get your yahoo ID, please?
Thanks a lot