944,101 Members | Top Members by Rank

Ad:
  • PHP Discussion Thread
  • Unsolved
  • Views: 3152
  • PHP RSS
Aug 28th, 2005
0

php error HELP!!!

Expand Post »
Hey, i have recievied Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /u3.bristol/s20/ad999/public_html/register.php on line 63, i was wondering what the problem could be, i really need help as my dissertation deadline is coming soon.


<?php # Script 12.6 - register.php
// This is the registration page for the site.

// Set the page title and include the HTML header.
$page_title = 'Register';
include ('includes/headerlogin.html');

if (isset($_POST['submit'])) { // Handle the form.

require_once ('../mysql_connect1.php'); // Connect to the database.

// Check for a first name.
if (eregi ("^[[:alpha:].' -]{2,15}$", stripslashes(trim($_POST['first_name'])))) {
$fn = escape_data($_POST['first_name']);
} else {
$fn = FALSE;
echo '<p><font color="red" size="+1">Please enter your first name!</font></p>';
}

// Check for a last name.
if (eregi ("^[[:alpha:].' -]{2,30}$", stripslashes(trim($_POST['last_name'])))) {
$ln = escape_data($_POST['last_name']);
} else {
$ln = FALSE;
echo '<p><font color="red" size="+1">Please enter your last name!</font></p>';
}

// Check for an email address.
if (eregi ("^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,4}$", stripslashes(trim($_POST['email'])))) {
$e = escape_data($_POST['email']);
} else {
$e = FALSE;
echo '<p><font color="red" size="+1">Please enter a valid email address!</font></p>';
}

// Check for a username.
if (eregi ("^[[:alnum:]_]{4,20}$", stripslashes(trim($_POST['username'])))) {
$u = escape_data($_POST['username']);
} else {
$u = FALSE;
echo '<p><font color="red" size="+1">Please enter a valid username!</font></p>';
}

// Check for a password and match against the confirmed password.
if (eregi ("^[[:alnum:]]{4,20}$", stripslashes(trim($_POST['password1'])))) {
if ($_POST['password1'] == $_POST['password2']) {
$p = escape_data($_POST['password1']);
} else {
$p = FALSE;
echo '<p><font color="red" size="+1">Your password did not match the confirmed password!</font></p>';
}
} else {
$p = FALSE;
echo '<p><font color="red" size="+1">Please enter a valid password!</font></p>';
}

if ($fn && $ln && $e && $u && $p) { // If everything's OK.

// Make sure the username is available.
$query = "SELECT user_id FROM users WHERE username='$u'";
$result = @mysql_query ($query);

if (mysql_num_rows($result) == 0) { // Available.

// Add the user.
$query = "INSERT INTO users (username, first_name, last_name, email, password, registration_date) VALUES ('$u', '$fn', '$ln', '$e', PASSWORD('$p'), NOW() )";
$result = @mysql_query ($query); // Run the query.

if ($result) { // If it ran OK.

// Send an email, if desired.
echo '<h3>Thank you for registering!</h3>';
include ('includes/footer.html'); // Include the HTML footer.
exit();

} else { // If it did not run OK.
// Send a message to the error log, if desired.
echo '<p><font color="red" size="+1">You could not be registered due to a system error. We apologize for any inconvenience.</font></p>';
}

} else { // The username is not available.
echo '<p><font color="red" size="+1">That username is already taken.</font></p>';
}

mysql_close(); // Close the database connection.

} else { // If one of the data tests failed.
echo '<p><font color="red" size="+1">Please try again.</font></p>';
}

}// End of the main Submit conditional.
?>

<h1>Register</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<fieldset>

<p><b>First Name:</b> <input type="text" name="first_name" size="15" maxlength="15" value="<?php if (isset($_POST['first_name'])) echo $_POST['first_name']; ?>" /></p>

<p><b>Last Name:</b> <input type="text" name="last_name" size="30" maxlength="30" value="<?php if (isset($_POST['last_name'])) echo $_POST['last_name']; ?>" /></p>

<p><b>Email Address:</b> <input type="text" name="email" size="40" maxlength="40" value="<?php if (isset($_POST['email'])) echo $_POST['email']; ?>" /> </p>

<p><b>User Name:</b> <input type="text" name="username" size="10" maxlength="20" value="<?php if (isset($_POST['username'])) echo $_POST['username']; ?>" /> <small>Use only letters, numbers, and the underscore. Must be between 4 and 20 characters long.</small></p>

<p><b>Password:</b> <input type="password" name="password1" size="20" maxlength="20" /> <small>Use only letters and numbers. Must be between 4 and 20 characters long.</small></p>

<p><b>Confirm Password:</b> <input type="password" name="password2" size="20" maxlength="20" /></p>
</fieldset>

<div align="center"><input type="submit" name="submit" value="Register" /></div>

</form><!-- End of Form -->

<?php // Include the HTML footer.
include ('includes/footerlogin.html');
?>
Similar Threads
Reputation Points: 10
Solved Threads: 0
Newbie Poster
bebuuk is offline Offline
4 posts
since Aug 2005
Aug 29th, 2005
0

Re: php error HELP!!!

I'd change the line above from

$result = @mysql_query ($query);

to

$result = @mysql_query ($query) or die(mysql_error() . '<br>'.$query);

and see if there is a problem with the query - like no database connection or something.
Reputation Points: 10
Solved Threads: 1
Junior Poster
sarahk is offline Offline
138 posts
since Apr 2005
Aug 29th, 2005
0

Re: php error HELP!!!

the result i got from one of the other forms after copying and pasted what u wrote was this:

"Unknown column 'upload_date' in 'field list'
SELECT upload_id, file_name, ROUND(file_size/1024) AS fs, description, DATE_FORMAT(upload_date, '%M %e, %Y') AS d FROM uploads ORDER BY upload_date DESC"

Just wanted to confirm if the database connection was fine, but the fields in the column are wrong

Many thanks again

you have been of great help
Reputation Points: 10
Solved Threads: 0
Newbie Poster
bebuuk is offline Offline
4 posts
since Aug 2005
Aug 29th, 2005
0

Re: php error HELP!!!

Hey everyone

i keep getting this error, everything else seems to be fine, but i can't find out what the solution is to this problem( i also keep getting this error when i want to add_file or add_url):-

Fatal error: Cannot redeclare escape_data() (previously declared in ../mysql_connect.php:36) in /u3.bristol/s20/ad999/public_html/add_file.php on line 13

this is the mysql_connect statement i wrote


<?php # Script 12.4 - mysql_connect.php

// This file contains the database access information. This file also establishes a connection to MySQL and selects the database.

// Set the database access information as constants.
DEFINE ('DB_USER', 'ad999');
DEFINE ('DB_PASSWORD', '040045022');
DEFINE ('DB_HOST', 'vega.soi.city.ac.uk');
DEFINE ('DB_NAME', 'ad999');

if ($dbc = @mysql_connect (DB_HOST, DB_USER, DB_PASSWORD)) { // Make the connnection.

if (!mysql_select_db (DB_NAME)) { // If it can't select the database.

// Handle the error.
my_error_handler (mysql_errno(), 'Could not select the database: ' . mysql_error());

// Print a message to the user, include the footer, and kill the script.
echo '<p><font color="red">The site is currently experiencing technical difficulties. We apologize for any inconvenience.</font></p>';
include_once ('includes/footer.html');
exit();

} // End of mysql_select_db IF.

} else { // If it couldn't connect to MySQL.

// Print a message to the user, include the footer, and kill the script.
my_error_handler (mysql_errno(), 'Could not connect to the database: ' . mysql_error());
echo '<p><font color="red">The site is currently experiencing technical difficulties. We apologize for any inconvenience.</font></p>';
include_once ('includes/footer.html');
exit();

} // End of $dbc IF.

// Function for escaping and trimming form data.
function escape_data ($data) { //<---THIS IS THE PROBLEM
global $dbc;
if (ini_get('magic_quotes_gpc')) {
$data = stripslashes($data);
}
return mysql_real_escape_string (trim ($data), $dbc);
} // End of escape_data() function.
?>

and heres the add_file.php.

<?php # Script 11.7 - add_file.php
// This page allows users to upload files to the server.

// Set the page title and include the HTML header.
$page_title = 'Upload a File';
include ('includes/header.html');

if (isset($_POST['submit'])) { // Handle the form.

require_once ('../mysql_connect.php'); // Connect to the database.

// Function for escaping and trimming form data.
function escape_data ($data) {
global $dbc;
if (ini_get('magic_quotes_gpc')) {
$data = stripslashes($data);
}
return mysql_real_escape_string (trim ($data), $dbc);
} // End of escape_data() function.

// Check for a description (not required).
if (!empty($_POST['description'])) {
$d = escape_data($_POST['description']);
} else {
$d = '';
}

// Add the record to the database.
$query = "INSERT INTO uploads (file_name, file_size, file_type, description, upload_date) VALUES ('{$_FILES['upload']['name']}', {$_FILES['upload']['size']}, '{$_FILES['upload']['type']}', '$d', NOW())";
$result = @mysql_query ($query);

if ($result) {

// Create the file name.
$extension = explode ('.', $_FILES['upload']['name']);
$uid = mysql_insert_id(); // Upload ID
$filename = $uid . '.' . $extension[1];

// Move the file over.
if (move_uploaded_file($_FILES['upload']['tmp_name'], "../uploads/$filename")) {
echo '<p>The file has been uploaded!</p>';
} else {
echo '<p><font color="red">The file could not be moved.</font></p>';

// Remove the record from the database.
$query = "DELETE FROM uploads WHERE upload_id = $uid";
$result = @mysql_query ($query);
}

} else { // If the query did not run OK.
echo '<p><font color="red">Your submission could not be processed due to a system error. We apologize for any inconvenience.</font></p>';
}

mysql_close(); // Close the database connection.

} // End of the main Submit conditional.
?>

<form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

<input type="hidden" name="MAX_FILE_SIZE" value="524288">

<fieldset><legend>Fill out the form to upload a file:</legend>

<p><b>File:</b> <input type="file" name="upload" /></p>

<p><b>Description:</b> <textarea name="description" cols="40" rows="5"></textarea></p>

</fieldset>

<div align="center"><input type="submit" name="submit" value="Submit" /></div>

</form><!-- End of Form -->

<?php
include ('includes/footer.html'); // Include the HTML footer.
?>

Many Thanks again

Mandip Panesar
Reputation Points: 10
Solved Threads: 0
Newbie Poster
bebuuk is offline Offline
4 posts
since Aug 2005
Aug 29th, 2005
0

Re: php error HELP!!!

You are including or requiring add_file.php more than once

use include_once() or require_once() to prevent the file from redeclaring the functions.
Reputation Points: 10
Solved Threads: 1
Junior Poster
sarahk is offline Offline
138 posts
since Apr 2005
Aug 29th, 2005
0

Re: php error HELP!!!

This is giving me a headache and i am sure it giving you guys it aswell, i keep recieving Warning: move_uploaded_file(../uploads/11): failed to open stream: Permission denied in /u3.bristol/s20/ad999/public_html/add_file.php on line 48, i am working from home and transferring my .php scripts to the university server, i don't know if this could be the case!!

<?php # Script 12.8 - add_file.php
// This page allows users to upload files to the server.

// Set the page title and include the HTML header.
$page_title = 'Upload a File';
include ('./includes/header.html');

function escape_data ($data) {
global $dbc;
if (ini_get('magic_quotes_gpc')) {
$data = stripslashes($data);
}
return mysql_real_escape_string (trim ($data), $dbc);
} // End of escape_data() function.

$counter = 3; // Number of files to allow for.

if (isset($_POST['submitted'])) { // Handle the form.

require_once ('../mysql_connect.php'); // Connect to the database.

for ($i = 0; $i < $counter; $i++) { // Handle each uploaded file.

// Create index names to refer to the proper upload and description.
$filename = 'upload' . $i;
$description = 'description' . $i;

// Check for a file.
if (isset($_FILES[$filename]) && ($_FILES[$filename]['error'] != 4)) {

// Check for a description (not required).
if (!empty($_POST[$description])) {
$d = "'" . escape_data($_POST[$description]) . "'";
} else {
$d = 'NULL';
}

// Add the record to the database.
$query = "INSERT INTO uploads (file_name, file_size, file_type, description) VALUES ('{$_FILES[$filename]['name']}', {$_FILES[$filename]['size']}, '{$_FILES[$filename]['type']}', $d)";
$result = mysql_query ($query);

if ($result) {

// Return the upload_id from the database.
$upload_id = mysql_insert_id();

// Move the file over.
if (move_uploaded_file($_FILES[$filename]['tmp_name'], "../uploads/$upload_id")) { <----THIS IS THE PROBLEM

echo '<p>File number ' . ($i + 1) . ' has been uploaded!</p>';

} else { // File could not be moved.

echo '<p><font color="red">File number ' . ($i + 1) . ' could not be moved.</font></p>';

// Remove the record from the database.
$query = "DELETE FROM uploads WHERE upload_id = $upload_id";
$result = mysql_query ($query);

// Add more detailed error reporting, if desired.

}

} else { // If the query did not run OK.
echo '<p><font color="red">Your submission could not be processed due to a system error. We apologize for any inconvenience.</font></p>';
// Print the query and invoke the mysql_error() function to debug.
}

} // End of if (isset($the_file)...

} // End of FOR loop.

mysql_close(); // Close the database connection.

} // End of the main Submit conditional.
?>
<form enctype="multipart/form-data" action="add_file.php" method="post">

<fieldset><legend>Fill out the form to upload a file:</legend>
<input type="hidden" name="MAX_FILE_SIZE" value="524288">

<?php // Create the inputs.
for ($i = 0; $i < $counter; $i++) {
echo '<p><b>File:</b> <input type="file" name="upload' . $i . '" /></p>
<p><b>Description:</b> <textarea name="description' . $i . '" cols="40" rows="5"></textarea></p><br />
';
}
?>

</fieldset>
<input type="hidden" name="submitted" value="TRUE" />
<div align="center"><input type="submit" name="submit" value="Submit" /></div>

</form>
<?php
include ('./includes/footer.html');
?>

many thanks again

i owe you one!
Reputation Points: 10
Solved Threads: 0
Newbie Poster
bebuuk is offline Offline
4 posts
since Aug 2005

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in PHP Forum Timeline: Anyone familiar with Invision that could help?
Next Thread in PHP Forum Timeline: what exactly does this do?





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC