PHP

Boas, o alojamento da sapo (kd eu utilizava) n suportava PHP...
Precisas de ter um alojamento que suporte PHP, so assim podes utilizar um formulario e executa-lo
 
Não consigo aceder a pagina :/

EDIT: Freehostia... se tiveres num serviço Free, eles n te deixam usar a função mail(); .... isto é uma das maneiras de evitar spammers :/
 
Porque se depois usares algum formulário para enviar imagens ou ficheiros, tens de fazer cuidado com as validações que tiveres, pois um pequeno script de PHP permite sacar os ficheiros todos que tiveres alojado.

Estou a desenvolver o ficheiro, deixo-te o aqui quando tiver terminado.
 
Criei 3 ficheiros, o login.php, logout.php o encomendas.php:


login.php


PHP:
<?php
session_start();

// A password que pretendes
$password='12345';

// O url para onde queres redireccionar depois do login
$url='http://tomasalmeidasantos.freehostia.com/encomendas.html';

$autenticado=$_SESSION['autenticado'];

if($autenticado==1){
    header('Location:'.$url,TRUE,301);
    exit();
}
else {
    if($_POST['password']==$password){
        $_SESSION['autenticado']=1;
        header('Location:'.$url,TRUE,301);
    }
    elseif(isset($_POST['password']) && $_POST['password']!=$password) {
        echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    font-family: Georgia, Tahoma, Verdana, Arial;
    font-size: 13px;
}
.erro {
    color: #F00;
}
</style>
<title>Login</title>
</head>
<body>
    <span class="erro">Password inválida</span><br />
    <form method="POST" action="login.php">
    <label for="password">Password:</label><input type="password" name="password" id="password" />
    <input type="submit" value="Submeter" />
</body>
</html>';
    }
    else {
        echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    font-family: Tahoma, Verdana, Arial;
    font-size: 13px;
}
</style>
<title>Login</title>
</head>
<body>
    Têm de autenticar-se.<br />
    <form method="POST" action="login.php">
    <label for="password">Password:</label><input type="password" name="password" id="password" />
    <input type="submit" value="Submeter" />
</body>
</html>';
    }
}
?>
logout.php:


PHP:
<?php
session_start();
$_SESSION['autenticado']=0;

// O url para onde queres redireccionar depois de fazer o logout
$url='http://tomasalmeidasantos.freehostia.com/login.php';

header('Location:'.$url,TRUE,301);
exit();
?>
E encomendas.php


PHP:
<?php
session_start();

// O url para onde queres redireccionar caso não tenha password
$url='http://tomasalmeidasantos.freehostia.com/login.php';

$autenticado=$_SESSION['autenticado'];

if($autenticado==1){
    // O código da tua página
}
else {
    header('Location:'.$url,TRUE,301);
    exit();
}
?>
 
tomassantos, só uma coisa, queria-te pedir para n criares dois posts seguidos, tipo edita akele k fizeste e acrescenta. Isto pk dps para tar a ler o topico é mais facil.

Em relação ao que pedes, podes utilizar Cookies/Sessions.
Uma ideia:
Ao efectua o Login é definido o Cookie['username'] e o Cookie['password']
na pagina encomendas.html antes de ele aceder à pagina, o script verifica se ele tem alguma cookie ou password definida, caso n tenha faz um redirect :p
Espero ter ajudado
 
No login, altera isto:

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    font-family: Tahoma, Verdana, Arial;
    font-size: 13px;
}
</style>
<title>Encomendas</title><body bgcolor="#B5B591" text="#336600" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF" leftmargin="0" topmargin="0">
</head>
<body>
    Digite a sua senha para acessar<br />
    <form method="POST" action="login.php">
    <label for="password">Password:</label><input type="password" name="password" id="password" />
    <input type="submit" value="Submeter" />
</body>
</html>
Para isto:

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    background: #B5B591;
    color: #336600;
    font-family: Tahoma, Verdana, Arial;
    font-size: 13px;
}
</style>
<title>Login</title>
</head>
<body>
    Digite a sua senha para acessar<br />
    <form method="POST" action="login.php">

    <label for="password">Password:</label><input type="password" name="password" id="password" />
    <input type="submit" value="Submeter" />
</body>
</html>
E no encomendas.php, onde diz para pores o código da tua página, pões:

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    background: #B5B591;
    color: #336600;
    font-family: Tahoma, Verdana, Arial;
    font-size: 13px;
}
</style>
<title>Login</title>
</head>
<body>
    
    O teu texto ou conteúdo....

</body>
</html>
Espero que ter ajudado.
 
Última edição:
Vê se assim está melhor:

Código:
<?php
session_start();

// O url para onde queres redireccionar caso não tenha password
$url='login.php';

$autenticado=$_SESSION['autenticado'];

if($autenticado==1){
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    background: #B5B591;
    color: #336600;
    font-family: Tahoma, Verdana, Arial;
    font-size: 13px;
}
</style>
<title>Login</title>
</head>
<body>
    
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
    <a href="logout.php"><font color="#008000" size="4">Terminar Sessão</font></a>
</body>
</html>
<?php
}
else {
    header('Location:'.$url,TRUE,301);
    exit();
}


?>
 
Não era suposto ficar assim:

Código:
<?php
session_start();

// O url para onde queres redireccionar caso não tenha password
$url='login.php';

$autenticado=$_SESSION['autenticado'];

if($autenticado==1){
    // O código da tua página
    
    <body bgcolor="#B5B591" text="#336600" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF" leftmargin="0" topmargin="0">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="content-language" content="pt" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="robots" content="noindex, nofollow" />
<style>
body {
    background: #B5B591;
    color: #336600;
    font-family: Tahoma, Verdana, Arial;
    font-size: 13px;
}
</style>
<title>Login</title>
</head>
<body>
    

</body>
</html></p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
<p align="left">
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
    
    <a href="logout.php"><font color="#008000" size="4">Terminar Sessão</font></a></p>
</p>


</body>
</html>
}
else {
    header('Location:'.$url,TRUE,301);
    exit();
}


?>

Diz que dá erro na linha 11 (onde começa o que disseste)

O que tá mal?

Obrigado p+ela ajuda.

Tu n podes meter o codigo HTML no meio do codigo de PHP, tens de mete-lo sempre fora do <?php ?>, nem que feches o codigo PHP e dps de meteres o codigo html o abras outra vez
O exemplo dado pelo D.Carreira tem a separação de ambos os codigos
 
Calma, eu só quero uma ajudinha para meter as mensagens no sitio que quero. Este fórum é para ajudar...

Isso que pedes tá no nosso amigo Google ..
Scripts de logins, logout's e afins é o que não falta ...

Uma breve pesquisa por: php login script deu isto ...

Off-Topic: Mas como existe um fórum onde o pessoal percebe e explica e tal mais vale vir aqui do que ao Google ... Preguiçoso :P
Além disso, se tens ideias de implementar estes scripts em mais do que 1 site, aprende mesmo php e não estejas dependente dos outros e dos tutoriais ...

cumps,
tuniq
 
Back
Topo