Przerabiam ten kod rejestracji/logowania, który mi służy do dodania użytkownika do bazy i stworzenie sesji -->
<?php
require_once('cfg.inc.php');
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ShoutBox</title>
</head>
<body>
<?php
require_once('libs/ShoutBox.class.php');
require_once('libs/ShoutBoxDBMysql.class.php');
$jl = false; //w ifach jesli damy to na true, to na podstawie tego przekierujemy na strone shouta.
if (empty($_POST['nick'])) $er[] = 'Podaj nick';
if (empty($_POST['pass'])) $er[] = 'Podaj hasło';
if (empty($_POST['color'])) $color = '000000';
else{
if (preg_match('/^[0-9a-f]{6}$/i',$_POST['color'])) $color = $_POST['color'];
else
$er[] = 'Podany kolor jest nieprawidłowy';
}
ShoutBoxDBMysql::MysqlConnect();
$sql = 'select ID, PASS from ShoutBoxUser where NICK=\''.$nick.'\'';
if (!$res)
$er[] = 'Błąd bazy danych';
else{
$pass = $row['PASS'];
if ($pass == sha1($_POST['pass'])){
$_SESSION['nick'] = $nick;
$_SESSION['id'] = $row['ID'];
if ($cfg_shoutbox['user_activity'])// || isset($_POST['savecolor']))
$up[] = 'LAST_ACTIVE_TIME=now()';
if (isset($_POST['savecolor'])) $up[] = "COLOR='$color'";
$_SESSION['justlogged'] = true;
$jl = true;
//
}
else
$er[] = 'Taki login już istnieje, a ty podałeś błędne hasło';
} else { //brak takiego loginu to dodajemy do bazy i logujemy
$sql = "insert into ShoutBoxUser values (null,'$nick', '".sha1($_POST['pass'])."','$color', now())";
if (!$res)
$er[] = 'Błąd bazy danych';
else {
$_SESSION['nick'] = $nick;
$_SESSION['justlogged'] = true;
$jl = true;
}
}
}
}
}
if ($jl){//po poprawnym zalogowaniu przenosimy na strone shouta
header('Location: ShoutBoxDisplay.php'); }
echo '<div style="color:red">'; foreach ($er as $error)
}
?>
<form method="post">
<table>
<tr>
<td><label>Nick: </label></td>
<td><input type="text" name="nick" /></td><td> (jesli jestes nowy - podaj nowy nick, jeśli masz już konto - podaj swój nick)</td>
</tr><tr>
<td><label>Hasło: </label></td>
<td><input type="password" name="pass" /></td><td>(jesli jestes nowy - podaj nowe hasło, jeśli masz już konto - podaj swoje hasło)</td>
</tr><tr>
<td><label>Kolor: </label></td>
<td><input type="text" name="color" /></td><td>(podaj kolor, pod jakim chcesz być widziany. Kolor w postaci RRGGBB, np: FF00FF)</td>
</tr><tr>
<td colspan="3"><input type="checkbox" name="savecolor" checked="checked" />Zapisać kolor w bazie</td>
</tr>
<tr>
<td colspan="3"><input type="submit" value="Start" /></td>
</tr>
</table>
</form>
<p>Nick "blocked" nie będzie mógł pisać.</p>
</body>
</html>
Nie liczę na zupełnego gotowca. Cieszył bym się jednak by pobrać zalogowaną sejse, sprawdzić czy istnieje, jeśli tak to za pomocą formularza wysłać rekord NAZWA, RANGA, OPIS do bazy danych. W bazie danych mam 2 tabele i tylko z jednej chce pobrac dane.
EDIT:
Mam tak obecnie:
<?php
require ('headerr.php');
$sql_host = ‚db4free.net’;
$sql_user = ‚ktoadmin’;
$sql_user = ‚123456’;
$sql_baza = ‚ktocbapl’;
$zapytanie = mysql_query(„SELECT * FROM shoutboxuser”); if ($zapytanie) {
echo $wynik["nick"].”<br />”;
$jl = false; //w ifach jesli damy to na true, to na podstawie tego przekierujemy na strone shouta.
if (!empty($_POST) && $_SESSION['nick']){ if (empty($_POST['nazwa'])) $er[] = 'Podaj nazwa';
if (empty($_POST['opis'])) $er[] = 'opis';
if (empty($_POST['color'])) $color = '000000';
else{
if (preg_match('/^[0-9a-f]{6}$/i',$_POST['color'])) $color = $_POST['color'];
else
$er[] = 'Podany kolor jest nieprawidłowy';
}
ShoutBoxDBMysql::MysqlConnect();
$sql = 'select ID, NICK from ShoutBoxUser where nazwa=\''.$nazwa.'\'';
if (!$res)
$er[] = 'Błąd bazy danych';
else{
$nick = $row['nick'];
if ($nick == ($_SESSION['nick'])){
$_SESSION['nazwa'] = $nazwa;
$_SESSION['opis'] = $opis;
$_SESSION['id'] = $row['ID'];
if ($cfg_shoutbox['user_activity'])// || isset($_POST['savecolor']))
$up[] = 'LAST_ACTIVE_TIME=now()';
if (isset($_POST['savecolor'])) $up[] = "COLOR='$color'";
$_SESSION['justlogged'] = true;
$jl = true;
//
}
else
$er[] = 'Taki login już istnieje, a ty podałeś błędne hasło';
} else { //brak takiego loginu to dodajemy do bazy i logujemy
$sql = "insert into ShoutBoxUser values (null, '$nazwa', '$color', now())";
if ($res)
$er[] = 'Błąd bazy danychhh';
else {
$_SESSION['nazwa'] = $nazwa;
$_SESSION['justlogged'] = true;
$jl = true;
}
}
}
}
}
if ($jl){//po poprawnym zalogowaniu przenosimy na strone shouta
}
echo '<div style="color:red">'; foreach ($er as $error)
}
}
}
else{
}
?>
i zwraca błąd
Parse error
: syntax error
, unexpected
'shoutboxuserâ' (T_STRING
) in
/virtual/kto
.cba
.pl
/zaloz
.php on line
15
Błędy w składni jeśli dobrze się domyślam.
Ten post edytował Roller 6.12.2014, 17:40:51