Jump to content

Beginer having trouble


jimjimalabim

Recommended Posts

Hello people I'm having some trouble, and I kind think I know what it is, but for some reason I just can't figure it out. I think I need an isset function, but I'm not sure where to put it? Here is my code followed by my errors.

 

<?php

echo"<?xml version=\1.0\"encoding=\UFT-8\"\x3f>";

echo"\n";

?>

 

<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN"

  "http://www.w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml"

  xml:lang="en"lang="en">

 

<head>

  <title>My Second PHP Generated Document</title>

</head>

<body>

 

<?php

  if (isset($_POST['submit'])) {

  if ($_POST['submit'] == "Clear") {

    $workValue = "";

    $workType = "";

  } elseif ($_POST['submit'] == "Calculate") {

    $workValue = $_POST['vfld'];

    $workType = $_POST['tfld'];

    $calcValue = (float) $workValue;

    if (empty($_POST['vfld'])) {

      echo "<h3>Error</h3>";

      echo "<p>You must enter a value!</p>\n";

    } elseif ($calcValue == 0) {

        echo "<h3>Error</h3>";

        echo "<p>You must enter a number!</p>\n";

    } elseif ($calcValue < 0) {

        echo "<h3>Error</h3>";

        echo "<p>You must enter a positive number!</p>\n";

    } elseif (empty($_POST['tfld'])) {

  echo "<h3>Error</h3>";

        echo "<p>You must select a calculation type!</p>\n";

    }} else {

        switch ($workType) {

        case "circle":

          $areaValue = $calcValue * $calcValue * pi();

          break;

        case "square":

          $areaValue = $calcValue * $calcValue;

        // echo "The area of a square whose sides are"

          break;

        case "triangle":

          $halfSide = $calcValue/2;

          $otherSide = sqrt(($calcValue * calcValue) - ($halfSide * halfSide));

          $areaValue = $otherSide * $halfSide;

          echo "The area of an equilateral triangle whose sides are

          $calcValue} is {areaValue}.";

      break;

    }}

  }

?>

 

<form method="post" action="hw04.php"

  id="form1" name="form1">

  <p>

  Enter a number here :

  <input type="text" id="vfld" name="vfld"

  value="<?php echo $workValue; ?>"/>

  </p>

  <p>

  This number is a:

  <br />

  <input type="radio" name="tfld" value="circle"

  <?php if ($workType == "circle") {

    echo 'checked="checked"'; } ?> />

  : the radius of a circle

  <br />

  <input type="radio" name="tfld" value="square"

  <?php if ($workType == "square") {

    echo 'checked="checked"'; } ?> />

  : the length of one side of a square

  <br />

  <input type="radio" name="tfld" value="triangle"

  <?php if ($workType == "triangle") {

    echo 'checked="checked"'; } ?> />

  : the length of one side of an equilateral triangle

  </p>

  <p>

  <input type="submit" name="submit" value="Calculate" />

  <input type="submit" name="submit" value="Clear" />

  </p>

  </form>

 

<div id="footer">

<pre>This page written by: <cite>James Cozzy</cite> ©2011 and beyond</pre>

</div>

 

</body>

 

</html>

 

And my errors

 

Enter a number here :

 

This number is a:

 

Notice: Undefined variable: workType in /studfs1/j-cozzy/homepage/CISS-225/hw04.php on line 69

/> : the radius of a circle

 

Notice: Undefined variable: workType in /studfs1/j-cozzy/homepage/CISS-225/hw04.php on line 74

/> : the length of one side of a square

 

Notice: Undefined variable: workType in /studfs1/j-cozzy/homepage/CISS-225/hw04.php on line 79

/> : the length of one side of an equilateral triangle

 

any help would be much appreciated?

Link to comment
Share on other sites

Those undefined variables are only defined in your script after the form is submitted. The first time through, they aren't defined. You should initialize them at the start of your script by doing something like

<?php
$workValue = (isset($_POST['vfld']))?$_POST['vfld']:'';
$workType = (isset($_POST['tfld']))?$_POST['tfld']:'';
?>

 

Note: when you post code to this forum, please put it withing


tags.

 

Ken

Link to comment
Share on other sites

Thank you, that helped. I'm still having some issues, but I will work through them, i'm sure if it gets too confusing I will be back. What do you mean post code within [ code] 

?

 

Again thank you, it looks like you turned them into global variables? Or maybe you can explain a little more what you did?

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.