Portál AbcLinuxu, 10. listopadu 2025 02:05
$path = "/wpplugins/";
// funkce pro ošetření vstupních dat od uživatele
function db_escape($str)
{
return mysql_real_escape_string(@get_magic_quotes_gpc() ? stripslashes($str) : $str);
}
include "spojeni_db.php";
$PHPSESSID=rand(1, 2000000);
$_SESSION["test"]=0;
$_SESSION["PHPSESSID"]=$PHPSESSID;
$_SESSION["test"]=$_POST['test'];
$IP=$_SERVER["REMOTE_ADDR"];
if ($_SESSION["test"] = 1) {
$_SESSION["name"]=trim($_POST['name']);
$_SESSION["pass"]=trim($_POST['pass']);
if (!isset($_SESSION["name"])){$_SESSION['name']="NULL";}
if (!isset($_SESSION["pass"])){$_SESSION['pass']="NULL";}
if (!isset($_POST['test'])){$_SESSION['test']="NULL";}
$tb = "logintable";
$username = $_SESSION["name"];
$userpass = $_SESSION["pass"];
$result = mysql_query("SELECT COUNT(*) FROM $tb WHERE Nick = '$username' AND Password = '$userpass' ");
echo "$result";
echo "jste úspěšně přihlášen";
}
else {zobraz formular}
zobraz zakladni formular>
kód souboru pro pripojeni k databázi:
if ($_SERVER["SERVER_ADDR"]=="localhost")
{
define("SQL_HOST","localhost");
define("SQL_DBNAME","users");
define("SQL_USERNAME","root");
define("SQL_PASSWORD","richter");
}
else
{
echo "Nelze se pripojit k databazi";
}
Nemůžu se dopátrat problému, předem díky za odpovědi.
echo "$result";je blbost, nějaké mysql_fetch_xxx tam chybí…, ale jinak nevím ani na co se ptáte…
$id_spojeni = mysql_connect(`localhost`,`root`,`richter`);
if (!$id_spojeni) {
echo "Spojení s MySQL databází se nezdařilo
";
}
else {
echo "Spojeni s databází navázáno
";
}
$vysledek_vybrani = mysql_select_db('users', $id_spojeni);
if (!$vysledek_vybrani) {
echo "Databázi users se nám nepodařilo vybrat
";
}
else {
echo "Databáze users vybrána
";
}
$id_vysledku = mysql_query(`SELECT * FROM logintable`,$id_spojeni);
if (!$id_vysledku) {
echo "Nepodařilo se nám poslat SQL dotaz do databáze
";
}
else {
echo "Podařilo se poslat SQL dotaz
";
}
Jméno
Heslo
while($radek = mysql_fetch_row($id_vysledku))
{
for ($i=0; $i<2; ++$i)
echo ``, $radek[$i], ` `;
}
mysql_close($id_spojeni);
výstup na stránce:
Spojeni s databází navázáno
Databázi users se nám nepodařilo vybrat
Nepodařilo se nám poslat SQL dotaz do databáze
Jméno Heslo
( ! ) Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\wamp\www\resultdb.php on line 39
Call Stack
# Time Memory Function Location
1 0.0006 372944 {main}( ) ..\resultdb.php:0
2 0.1229 379056 mysql_fetch_row ( ) ..\resultdb.php:39
PS: nechápu jak může script připojit uživatele ROOT, ale neselectnout požadovanou datbázi když je syntaxe správně...nějaké rady?
).php -r 'echo `ls`;'php -r 'echo "ls";'
<?php
$id_spojeni = mysql_connect('localhost','root','heslo');
if (!$id_spojeni)
{
echo "Spojení s MySQL databází se nezdařilo\n";
exit(1);
}
else
{
echo "Spojeni s databází navázáno\n";
}
$vysledek_vybrani = mysql_select_db('users', $id_spojeni);
if (!$vysledek_vybrani)
{
echo "Databázi users se nám nepodařilo vybrat\n";
echo "Error no. " . mysql_errno($id_spojeni) . ", Message: " . mysql_error($id_spojeni) . "\n";
exit(2);
}
else
{
echo "Databáze users vybrána\n";
}
$id_vysledku = mysql_query('SELECT * FROM logintable',$id_spojeni);
if (!$id_vysledku)
{
echo "Nepodařilo se nám poslat SQL dotaz do databáze\n";
echo "Error no. " . mysql_errno($id_spojeni) . ", Message: " . mysql_error($id_spojeni) . "\n";
exit(3);
}
else
{
echo "Podařilo se poslat SQL dotaz\n";
}
//Jméno
//Heslo
while($radek = mysql_fetch_row($id_vysledku))
{
for ($i=0; $i<2; ++$i)
echo $radek[$i] . "\n";
}
mysql_close($id_spojeni);
<?php
$query="select * from user";
$result=mysql_query($query);
$numfields = mysql_num_fields($result);
echo "<table>\n<tr>";
// Header
for ($i=0; $i < $numfields; $i++) {
echo '<th>', htmlspecialchars(mysql_field_name($result, $i)), '</th>';
}
echo "</tr>\n";
// Data
while ($row = mysql_fetch_row($result)) {
echo '<tr>';
foreach ($row as $col) {
echo '<td>', htmlspecialchars($col), '</td>';
}
echo "</tr>\n";
}
echo "</table>\n"
?>
Jinak doporučuju se podívat na funkci mysql_fetch_assoc. Kód při jejím používání je mnohem čitelnější a prý to ani není nijak znatelně pomalejší.
A pak také na mysql_real_escape_string.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.