Wersja PHP 5.2 a nowsza

0

Witam.

Mam panel administratora pod wersję PHP 5.2 gdzie wszystko ładnie działa. Gdy zmieniam na nowsza to można się zalogować ale zaraz po kliknięciu jakiegoś linku wyrzuca znów do logowania.
Co jest nie tak?

1

nooo od 5.2 do 7.3 minęło już 9 wersji, pozmieniało się sporo więc się nie dziw, że coś nie działa.

0
mr_jaro napisał(a):

nooo od 5.2 do 7.3 minęło już 9 wersji, pozmieniało się sporo więc się nie dziw, że coś nie działa.

Rozumiem. Ale już na wersji 5.3 nie działa..

1

Kryształowej kuli to my nie mamy. Otwierasz https://www.php.net/manual/en/migration53.php i zaczynasz zabawę w poszukiwanie co się dzieje.

1

Jeśli nie chcesz pokazać kodu to radziłbym zacząć od tego:
https://www.php.net/manual/en/migration53.deprecated.php

1

Poczytaj o echo. Uzyj do sledzenia gdzie jest zle.

No chyba ze umiesz uzyc debuggera.

0
vpiotr napisał(a):

Poczytaj o echo. Uzyj do sledzenia gdzie jest zle.

No chyba ze umiesz uzyc debuggera.

Do tego tu już nawet var_dump() jest lepszy.

0
<?php
session_start();
include_once('config.php');

$mysql_user_name = mysql_user_name;
$mysql_user_passwd = mysql_user_passwd;
$mysql_name = mysql_name;
$host = host;


$sql = mysql_connect($host,$mysql_user_name,$mysql_user_passwd)
	or die('Nie mogę połączyć się z bazą danych: '.mysql_error());

mysql_select_db($mysql_name,$sql)
	or die('Nie mogę wybrać bazy: '.mysql_error());

mysql_query('SET NAMES utf8');		
	
if (isset($_GET['logout'])==1) 
{
	$_SESSION['zalogowany'] = false;
	session_destroy();
}

function filter($data)
{
    if(get_magic_quotes_gpc())
        $data = stripslashes($data);

    return mysql_real_escape_string(htmlspecialchars(trim($data)));
}

if (isset($_POST['log']))
{
	$login = filter($_POST['login']);
	$passwd = filter($_POST['passwd']);
	$passwd_md5 = md5($passwd);

	if (mysql_num_rows(mysql_query("SELECT login, pass FROM user WHERE login = '".$login."' AND pass = '".$passwd_md5."';")) > 0)
	{

		$_SESSION['zalogowany'] = true;
		$_SESSION['login'] = $login;
		
	}
	else $error_data =  '<div id="admin-login-error"><img class="img" src="theme/images/error.png"> Wpisano złe dane!</div>';
}

$day = date('d');
$day_of_the_week = date('l');
$month = date('n');
$year = date('Y');
$hourminute = date('G:i');

$month_pl = array(1 => 'Stycznia', 'Lutego', 'Marca', 'Kwietnia', 'Maja', 'Czerwca', 'Lipca', 'Sierpnia', 'Września', 'Października', 'Listopada', 'Grudnia');

$day_of_the_week_pl = array('Monday' => 'Poniedziałek', 'Tuesday' => 'Wtorek', 'Wednesday' => 'Środa', 'Thursday' => 'Czwartek', 'Friday' => 'Piątek', 'Saturday' => 'Sobota', 'Sunday' => 'Niedziela');

$time = $day_of_the_week_pl[$day_of_the_week].", ".$day." ".$month_pl[$month]." ".$year."r. ".$hourminute;

if ($_SESSION['zalogowany']==true)
{
	echo"<div id='log-ap'>";
	echo"<div id='log-ap-info'>";
	echo "<div style='float:left;padding:5px 20px 5px 0px'>Witaj <b><font color='red'>".$_SESSION['login']."</font></b> ";
	
	echo "<a href='?logout=1'>[Wyloguj]</a></div> <div class='right'>".$time."</div></div>";	
	$result = mysql_query("SELECT * FROM user WHERE login = '".$_SESSION['login']."'");
	$record = mysql_fetch_array($result, MYSQL_ASSOC);
	$admin = $record['status'];
	if($admin == "admin")
	{	
	include_once('administration.php');
	}
	else
	{
		echo "<br/>User";
	}
	echo "</div>";
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
	<title>Panel Administracyjny</title>
	<meta http-equiv="content-type" content="text/html; charset=utf-8" />
	<meta http-equiv="content-language" content="pl" />
	<link rel="stylesheet" type="text/css" href="theme/admin.css" />
	<script type="text/javascript" src="js/tinymce/tinymce.min.js"></script>
	<script>
        tinymce.init({selector:'textarea', language : 'pl', entity_encoding : 'raw', height : 300, plugins: "preview,textcolor,advlist,autolink,autosave,charmap,code,emoticons,hr,image,media,paste,spellchecker"});
	</script>
<script type="text/javascript" src="/js/tinymce/jscripts/tiny_mce/tiny_mce.js"></script> <script type="text/javascript"> tinyMCE.init({
         // General options
         mode : "textareas",
         theme : "advanced",
		 language : "pl",
		 entity_encoding : "raw"
         plugins : "autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
         // Theme options
         theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect",
         theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
         theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
         theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,spellchecker,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pagebreak,|,insertfile,insertimage",
         theme_advanced_toolbar_location : "top",
         theme_advanced_toolbar_align : "left",
         theme_advanced_statusbar_location : "bottom",
         theme_advanced_resizing : true,
         // Skin options
         skin : "o2k7",
         skin_variant : "silver",
         // Example content CSS (should be your site CSS)
         content_css : "css/example.css",
         // Drop lists for link/image/media/template dialogs
         template_external_list_url : "js/template_list.js",
         external_link_list_url : "js/link_list.js",
         external_image_list_url : "js/image_list.js",
         media_external_list_url : "js/media_list.js",
         // Replace values for the template plugin
         template_replace_values : {
                 username : "Some User",
                 staffid : "991234"
         } }); </script>
</head>
<body>

<?php if ($_SESSION['zalogowany']==false): 
echo $error_data; ?>

<div id="admin-login-top"><img class="img" src="theme/images/login.png"> Panel Logowania</div>
<div id="admin-login">
	<form action="admin.php" method="post">
	Login:<br/> <input class="admin-log" type="text" name="login" /><br /><br />
	Hasło:<br/> <input class="admin-log" type="password" name="passwd" /><br /><br />
</div>
<div id="admin-login-button">
		<center><input type="submit" name="log" value="Zaloguj" /></center>
		</form>
</div>
<?php 
endif;
?>
</body>
</html>
<?php
mysql_close($sql); 
?>
0

zainstaluj panel administratora pod wersje 7.3

0

Jak mam zainstalować panel administratora na własnej stronie, na której parę lat temu pisałem całość..

0

Rozumiem, tak właśnie było.

Chce po prostu zmienić na 5.3..
I chciałbym wiedzieć co zmienić aby to działało..

0

Jeżeli uzywasz kodu z wersji php 5.2 i chcesz zeby ci dziala tylko na 5.3 to nic sie nie zmienilo w kodzie i powinno dzialac bez zadnego problemu.

0

Właśnie powinno..
A przy wersji 5.3 wyrzuca po zalogowaniu jeśli klikniemy w jakiś tam link..

Przy wersji 7.3 strona wgl się nie wyświetla tak na marginesie 😀

Próbowałem z protokołem https ale też nic nie dało to.

0

Wyglada jak problem z folderem gdzie zapisywane sa sesje, albo cookies w przegladarce, albo zablkowana JS , albo nie ma praw wkatalogu /var/lib/php/session ustaw tam na 777 i zonba czy dziala. nie szukalbym bledu w wersji php tylko w katalogach i prawach dostepu. lub w bazie ze nie zapisuej sesji nie wiem jakiego mechanizmu uzywasz i czy local czy gdzies hosting

0

Sam sobie coś tam klepalem powoli.. Prosty panel administratora.

Raz korzystałem z php Fusiona i podziękowałem

^^ nie ustawiłem uprawnień w żadnym katalogu nigdzie. Na localhoscie działa wszystko dobrze. Tylko na hostingu.
Na jednej stronie mam 5.2 i działa dobrze, a na drugiej stronie jest 5.3 i nie działa już

1

Patrząc na twój kod mogę powiedzieć , że nie ma czego zazdrościć w refactoringu tego kodu xD
Podstawowy błąd jaki będziesz dostawał to taki że używasz metody mysql_connect() która jest deprecated w php 7.0+ https://www.php.net/manual/en/function.mysql-connect.php
Polecam używać Xdebug do szukania błędów

0

Mam taki blad w logach:

error 5.173.96.24 Fri May 31 1154 2019 FastCGI: server "/etc/www/php/fpm/saser-php56" stderr: PHP message: PHP Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/saser/public_html/admin.php:1) in /home/saser/public_html/admin.php on line 2, referer: http://djsaser.pl/admin.php

1 użytkowników online, w tym zalogowanych: 0, gości: 1