Проблем с логин скрипт

oXteR

Registered
Warning: fopen(data.txt) [function.fopen]: failed to open stream: Permission denied in /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/signup.php on line 127

Warning: fwrite(): supplied argument is not a valid stream resource in /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/signup.php on line 128

Warning: fclose(): supplied argument is not a valid stream resource in /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/signup.php on line 129
Защо ми изписва така като пробвам да направя регистация?
 
Влизаш във ftp client
Усер пасс хост даваш на файла дясно копче
Пропертис => CHMOD и го настроиваш на 777
 
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/login.php:11) in /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/login.php on line 145

Warning: Cannot modify header information - headers already sent by (output started at /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/login.php:11) in /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/login.php on line 146

А това сега защо ? писна ми от този скрипт :roll:
 
session_start() трябва да ти е в самото начало на документа, не трябва да има нищо преди него.

<?php
session_start()
?>
<html>
<head>
....
</html>

както преди <?php не трябва да има празни поленца
 
Parse error: syntax error, unexpected T_STRING in /www/110mb.com/o/x/t/e/r/_/_/_/oxter/htdocs/web/login.php on line 147
Писна ми :(
 
<?php
session_start();
?>

//php user script
//ben speakman
session_start();
header("Cache-control: private");
?>
<html>
<head>
<title>Logged-in</title>
</head>
<body>
<?php

$datafile="data.txt"; //name of the data file

if($_GET['action'] == "login") {

if(!isset($_POST['username']) || !isset($_POST['password'])){ //this checks that all the fields are filled in

error_message("One or more required fields were left blank!", $username, $password);
}

$file = file($datafile);
while(list(,$value) = each($file)) {
list($fname,$femail,$furl,$fuser,$fpass,$blank) = explode('|', $value);
if($_POST['username'] == $fuser && $_POST['password'] == $fpass){


$_SESSION['name'] = $fuser;
$_SESSION['realname'] = $fname;
$_SESSION['url'] = $furl;
$_SESSION['email'] = $femail; //adds the users data to the php session
$_SESSION['pass'] = $fpass;


//insert html for sucessfull log on here
//you can use . $_SESSION['name'] . for username
// replace name with realname, url, email to display different name
?>
Ти си влязъл.<br>
Виж профила си от <a href="profile.php">тук</a><br>
или излез от <a href="logout.php">тук</a>.

</body>
</html>


<?php
$logink = true;
}
}

if($logink !== true) {
?>
Грешна парола или потребителско име !
<?

}
} elseif($_GET['action'] == 'change') {

if(!isset($_POST['name']) || !isset($_POST['email']) || !isset($_POST['url']) || !isset($_POST['newpass'])) {

//this checks that all the fields are filled in
?>
all fields were not filled in
<?
}

$file = file($datafile);
while(list(,$value) = each($file)){
list($fname,$femail,$furl,$fuser,$fpass) = explode('|', $value);
if($_SESSION['name'] == $fuser){

//opens data file to change it

$oldword = "$fname|$femail|$furl|$fuser|$fpass|";
$newword = $_POST['name'] . '|' . $_POST['email'] . '|' . $_POST['url'] . '|' . $_SESSION['name'] . '|' . $_POST['newpass'] . '|';
$fp = fopen($datafile, 'r');
$data = fread($fp, filesize($datafile));
fclose($fp);
$newdata = str_replace($oldword, $newword, $data);
$fp = fopen($datafile, 'w');
fwrite($fp,$newdata) or die ('error writing');
fclose($fp);

$succ = true; //data changed sucessfully
?>
Всичко беше променено успешно моля <a href="user.php">влез</a>
<?

$_SESSION['name'] = FALSE;
$_SESSION['pass'] = FALSE;
$_SESSION['url'] = FALSE;
$_SESSION['realname'] = FALSE;
$_SESSION['email'] = FALSE;

}
}
if($succ !== true) {
?>
Влизането неупешно -грешно име или парола
<?
}
} else {
exit;
}
?>
ето кода
 
Код:
<?php 
session_start(); 

header("Cache-control: private"); 
?> 
<html> 
<head> 
<title>Logged-in</title> 
</head> 
<body> 
<?php 

$datafile="data.txt"; //name of the data file 

if($_GET['action'] == "login") { 

if(!isset($_POST['username']) || !isset($_POST['password'])){ //this checks that all the fields are filled in 

error_message("One or more required fields were left blank!", $username, $password); 
} 

$file = file($datafile); 
while(list(,$value) = each($file)) { 
list($fname,$femail,$furl,$fuser,$fpass,$blank) = explode('|', $value); 
if($_POST['username'] == $fuser && $_POST['password'] == $fpass){ 


$_SESSION['name'] = $fuser; 
$_SESSION['realname'] = $fname; 
$_SESSION['url'] = $furl; 
$_SESSION['email'] = $femail; //adds the users data to the php session 
$_SESSION['pass'] = $fpass; 


//insert html for sucessfull log on here 
//you can use . $_SESSION['name'] . for username 
// replace name with realname, url, email to display different name 
?> 
Ти си влязъл.<br> 
Виж профила си от <a href="profile.php">тук</a><br> 
или излез от <a href="logout.php">тук</a>. 

</body> 
</html> 


<?php 
$logink = true; 
} 
} 

if($logink !== true) { 
?> 
Грешна парола или потребителско име ! 
<? 

} 
} elseif($_GET['action'] == 'change') { 

if(!isset($_POST['name']) || !isset($_POST['email']) || !isset($_POST['url']) || !isset($_POST['newpass'])) { 

//this checks that all the fields are filled in 
?> 
all fields were not filled in 
<? 
} 

$file = file($datafile); 
while(list(,$value) = each($file)){ 
list($fname,$femail,$furl,$fuser,$fpass) = explode('|', $value); 
if($_SESSION['name'] == $fuser){ 

//opens data file to change it 

$oldword = "$fname|$femail|$furl|$fuser|$fpass|"; 
$newword = $_POST['name'] . '|' . $_POST['email'] . '|' . $_POST['url'] . '|' . $_SESSION['name'] . '|' . $_POST['newpass'] . '|'; 
$fp = fopen($datafile, 'r'); 
$data = fread($fp, filesize($datafile)); 
fclose($fp); 
$newdata = str_replace($oldword, $newword, $data); 
$fp = fopen($datafile, 'w'); 
fwrite($fp,$newdata) or die ('error writing'); 
fclose($fp); 

$succ = true; //data changed sucessfully 
?> 
Всичко беше променено успешно моля <a href="user.php">влез</a> 
<? 

$_SESSION['name'] = FALSE; 
$_SESSION['pass'] = FALSE; 
$_SESSION['url'] = FALSE; 
$_SESSION['realname'] = FALSE; 
$_SESSION['email'] = FALSE; 

} 
} 
if($succ !== true) { 
?> 
Влизането неупешно -грешно име или парола 
<? 
} 
} else { 
exit; 
} 
?>



<?php
session_start();
?>

//php user script
//ben speakman
session_start();

header("Cache-control: private");
?>

махнах червеното
 
oXteR каза:
Пфф вече няма да ви занимавам пак грешка дава трий темата :idea:

Чакай сега.. ти да не инклудваш login.php в друг файл? защото ако е така, трябва да преместиш
Код:
<?php 
session_start(); 

header("Cache-control: private"); 
?>
това във файла в който инклудваш логина най-горе. защото логина е 110 реда а ти дава около 145-150 ред грешка
 

Back
Горе