Jump to content

Archived

This topic is now archived and is closed to further replies.

greeneel

creating, connecting and intering data to the database

Recommended Posts

Hi,

I am learning php and came across this script... (Script Attached) while using the book. Beginning PHP, Apache, Mysql Web Development.

and im getting this error: and i have a few questions
Fatal error: Call to undefined function: mysql_connect() in c:\wamp\www\createmovie.php on line 4

Now I don`t see why this isn`t working because in the book it said to download:PHP: 4.3.3, Apache: 2.0.47, Mysql: 4.0.15a and i`m following the book. Now I installed php 4.3.3, apache 2.0.47 but wasn`t able to find mysql 4.0.15a binary for windows so I installed mysql 5 most recent stable version as of today.
I am confused because following this book gets me nowhere when running this script but according to them it should work..Is it because i never got the mysql 4.0.15a? don`t see how a person writes a book to teach you something and seem to assume u know something about it already..

Can anyone tell me how to get around this connect problem ini this script?
Does anyone have any other ideas on books to point me to that works?
And does a mysql 4.0.15a exist for windows?

<?php
//Connect to <Mysql; note we`ve used our own parameters- you should
//use your won for hostname, user and password
$connect = mysql_connect("localhost", "root", "mysqlpass") or
die ("Hey loser, check your server connection.");

//Create the mail database
mysql_create_db("donda")
or die(mysql_error());

//make sure our recently created database is the active one
mysql_select_db ("donda");

//create "movie" table
$movie = "CREATE TABLE movie (
movie_id int(11) NOT NULL auto_increment,
movie_name varchar(255) NOT NULL,
movie_type tinyint(2) NOT NULL default 0,
movie_year int(4) NOT NULL default 0,
movie_leadactor int(11) NOT NULL default 0,
movie_director int(11) NOT NULL default 0,
PRIMARY KEY (movie_id)
KEY movie_type (movie_type,movie_year)
) TYPE=MyISAM AUTO_INCREMENT=4 ";

$results = mysql_query($movie)
or die (mysql_error());

//Creat "movietype" table
$movietype = "CREATE TABLE movietype (
movietype_id int(11) NOT NULL auto_increment,
movietype_label Varchar(100) NOT NULL,
PRIMARY KEY (movietype_id)
) TYPE=MyISAM AUTO_INCREMENT=9" ;

$results = mysql_query($movietype)
or die(mysql_error());

//create "people" table
$people = "CREATE TABLE people (
people_id int(11) NOT NULL auto_increment,
people_fullname varchar(255) NOT NULL,
people_isactor tinyint(1) NOT NULL default 0,
people_isdirector tinyint(1) NOT NULL default 0,
PRIMARY KEY (people_id)
) TYPE=MyISAM AUTO_INCREMENT=7";

$results = mysql_query($people)
or die(mysql_error());

echo "Movie Database successfully created!";
?>

Share this post


Link to post
Share on other sites
PHP uses an extension called "mysql" to communicate with MySQL. This extension must be specifically activated when you compile PHP.

My guess is that you did not do this. Read the installation instructions on php.net carefully and try compiling again.

Share this post


Link to post
Share on other sites
Agreed -- check the extensions in your php.ini file, make sure the extension path is specified correctly, there are apache things to handle as well. All of this is covered in the PHP installation documentation, as wickning1 mentioned.

Share this post


Link to post
Share on other sites
Also if you are just starting out, you may want to try a precompiled package of binaries like XAMPP.

Share this post


Link to post
Share on other sites

×

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.