Jump to content

example from O'Relilly web Database Applications book doesn't work. help?


andrew.cox2

Recommended Posts

Hi I am fairly new to PHP. I'm currently learning from the O'Reilly book Web Database Applications. The example in the book doesn't work and I can't figure out why. It should work by providing a link when I load example.6-12.php into the the browser. When clicked that link passes the parameters into example.6-13.php which prints the results of those two print statements that should have been passed to the server and back. I'm sure example.6-13.php should have a $connection = mysql_connect(hostname, user, password) function to make it work.  As I see it there is no code to even connect to the server. This code is directly from the books website webdatabasebook.com. Any ideas??

 

Example.6-12.php

 

<!DOCTYPE HTML PUBLIC

                "-//W3C//DTD HTML 4.01 Transitional//EN"

                "http://www.w3.org/TR/html401/loose.dtd">

<html>

<head>

  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

  <title>Explore Wines</title>

</head>

<body bgcolor="#ffffff">

Explore all our

<a href="example.6-13.php?regionName=All&wineType=All"> wines</a>

<br>Explore our

<a href="example.6-13.php?regionName=All&wineType=Red"> red wines</a>

<br>Explore our

<a href="example.6-13.php?regionName=Riverland&wineType=Red"> premium

reds from the Riverland</a>

<br>

<a href="index.html">Home</a></body>

</html>

 

 

Example.6-13.php

 

<!DOCTYPE HTML PUBLIC

                "-//W3C//DTD HTML 4.01 Transitional//EN"

                "http://www.w3.org/TR/html401/loose.dtd">

<html>

<head>

  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

  <title>Parameters</title>

</head>

<body>

<?php

 

  require "db.inc";

 

 

  print "regionName is {$_GET["regionName"]}\n";

  print "<br>wineType is {$_GET["wineType"]}\n";

 

?>

</body>

</html>

 

 

db.inc file

 

<?php

  // This file is the same as example 6-7, but includes mysqlclean() and shellclean()

 

  $hostName = "127.0.0.1";

  $databaseName = "winestore";

  $username = "myUserName";

  $password = "myPassword";

 

  function showerror()

  {

      die("Error " . mysql_errno() . " : " . mysql_error());

  }

 

  function mysqlclean($array, $index, $maxlength, $connection)

  {

    if (isset($array["{$index}"]))

    {

        $input = substr($array["{$index}"], 0, $maxlength);

        $input = mysql_real_escape_string($input, $connection);

        return ($input);

    }

    return NULL;

  }

 

  function shellclean($array, $index, $maxlength)

  {

    if (isset($array["{$index}"]))

    {

      $input = substr($array["{$index}"], 0, $maxlength);

      $input = EscapeShellArg($input);

      return ($input);

    }

    return NULL;

  }

?>

 

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.