prosím pomoc!
Doslo k chybe ve skriptu /3w/euweb.cz/t/teraristika/config.inc na rádku 15: mysql_num_rows(): supplied argument is not a valid MySQL result resource
config.inc:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>
<body>
<?php
// Tento skript nastaví zpusob oznamování a protokolování chyb.
//error_reporting (0); //povozní prostredí
error_reporting (E_ALL); //Vývojové prostredí.
// Nase vlastní funkce pro osetrení chyb.
function nase_osetreni_chyb ($chyba_kod, $chyba_zprava) {
$zprava = 'Doslo k chybe ve skriptu '. __FILE__. ' na rádku '. __LINE__. ": $chyba_zprava";
//error_log ($zprava, 1, 'phpmysql@dmcinsights.com'); // Provozní prostredí (odeslat e-mail).
echo '<font color="red" size="+1">', $zprava, '</font>'; // Vývojové prostredí (vypsat cerveným písmem).
}
set_error_handler('nase_osetreni_chyb');
?>
</body>
tak toto je mysql_spojit.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>
<body>
<?php
DEFINE ('DB_UZIVATEL', 'teraristika2');
DEFINE ('DB_HESLO', 'heslo');
DEFINE ('DB_HOSTITEL', 'mysql.webzdarma.cz');
DEFINE ('DB_DATABAZE', 'teraristika2');
if ($dbc = @mysql_connect (DB_HOSTITEL, DB_UZIVATEL, DB_HESLO)) {
if (!mysql_select_db (DB_DATABAZE)) {
nase_osetreni_chyb (mysql_errno(), 'Nelze vybrat pracovní databázi: '. mysql_error());
echo '<p><font color="red">Webový server má technické problémy.</font></p>';
exit();
}
} else {
nase_osetreni_chyb (mysql_errno(), 'Nezdarilo se pripojení k databázi: '. mysql_error());
echo '<p><font color="red">Webový server má technické problémy.</font></p>';
exit();
}
function opravit_chyby ($data) {
global $dbc;
if (ini_get('magic_quotes_gpc')) {
$data = stripslashes($data);
}
return mysql_real_escape_string (trim ($data), $dbc);
}
?>
</body>
a toto je samotný registruj.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>
<body>
<?php
require_once ('./config.inc');
$titul_stranky = 'Registrace';
if (isset($_POST['odeslat'])) {
require_once ('./mysql_spojit.php');
if (eregi ("^[[:alpha:].ešcržýáíéúudtnó' -]{2,15}$",
stripslashes(trim($_POST['jmeno'])))) {
$jm = opravit_chyby($_POST['jmeno']);
} else {
$jm = FALSE;
echo '<p><font color="red" size="+1">Zadejte prosím krestní jméno!</font></p>';
}
if (eregi ("^[[:alpha:].ešcržýáíéúudtnó' -]{2,30}$",
stripslashes(trim($_POST['prijmeni'])))) {
$prijm = opravit_chyby($_POST['prijmeni']);
} else {
$prijm = FALSE;
echo '<p><font color="red" size="+1">Zadejte prosím prijmení!</font></p>';
}
if (eregi ("^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,4}$",
stripslashes(trim($_POST['email'])))) {
$e = opravit_chyby($_POST['email']);
} else {
$e = FALSE;
echo '<p><font color="red" size="+1">Zadejte prosím platný E-mail!</font></p>';
}
if (eregi ("^[[:alnum:]_ešcržýáíéúudtnó]{4,20}$",
stripslashes(trim($_POST['uziv_jmeno'])))) {
$u = opravit_chyby($_POST['uziv_jmeno']);
} else {
$u = FALSE;
echo '<p><font color="red" size="+1">Zadejte prosím platné uživatelské jméno!</font></p>';
}
if (eregi ("^[[:alnum:]ešcržýáíéúudtnó]{4,20}$",
stripslashes(trim($_POST['heslo1'])))) {
if ($_POST['heslo1'] == $_POST['heslo2']) {
$h = opravit_chyby($_POST['heslo1']);
} else {
$h = FALSE;
echo '<p><font color="red" size="+1">Hesla nesouhlasí. Zadejte je znovu!</font></p>';
}
} else {
$h = FALSE;
echo '<p><font color="red" size="+1">Zadejte prosím platné heslo!</font></p>';
}
if ($jm && $prijm && $e && $u && $h) {
$dotaz = "SELECT id_uzivatele FROM uzivatele WHERE uziv_jmeno='$u'";
$vysledek = @mysql_query ($dotaz);
if (mysql_num_rows($vysledek) == 0) {
$dotaz = "INSERT INTO uzivatele(uziv_jmeno, jmeno, prijmeni, email, heslo, datum_registrace) VALUES ('$u', '$jm', '$prijm', '$e', PASSWORD('$h'), NOW())";
$vysledek = @mysql_query ($dotaz);
if ($vysledek) {
echo '<h3>Dekujeme za registraci!</h3>';
exit();
} else {
echo '<p><font color="red" size="+1">Registrace se nezdařila!</font></p>';
}
} else {
echo '<p><font color="red" size="+1">Toto uživatelské jméno je již obsazeno.</font></p>';
}
mysql_close();
} else {
echo '<p><font color="red" size="+1">Zkuste to znovu.</font></p>';
}
}
?>
<h1>Registrace</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"><fieldset>
<p><b>Krestní jméno:</b> <input type="text" name="jmeno" size="15" maxlength="15" value="<?php if (isset($_POST['jmeno'])) echo $_POST['jmeno']; ?>" /></p>
<p><b>Prijmení:</b> <input type="text" name="prijmeni" size="15" maxlength="30" value="<?php if (isset($_POST['prijmeni'])) echo $_POST['prijmeni']; ?>" /></p>
<p><b>E-mail:</b> <input type="text" name="email" size="15" maxlength="40" value="<?php if (isset($_POST['email'])) echo $_POST['email']; ?>" /></p>
<p><b>Uživatelské jméno:</b> <input type="text" name="uziv_jmeno" size="15" maxlength="20" value="<?php if (isset($_POST['uziv_jmeno'])) echo $_POST['uziv_jmeno']; ?>" /> <small>Použijte pouze písmena, císlice a podtržítka. Uživatelské jméno musí obsahovat 4 až 20 znaku.</small></p>
<p><b>Heslo:</b> <input type="password" name="heslo1" size="15" maxlength="20" /> <small>Použijte pouze písmena a císlice. Heslo musí obsahovat 4 až 20 znaku.</small></p>
<p><b>Potvrdte heslo:</b> <input type="password" name="heslo2" size="15" maxlength="20" /></p>
</fieldset>
<div align="center"><input type="submit" name="odeslat" value="Registrovat" /></div>
</form><!-- Konec formuláre -->
<?php
?>
</body>