Ir para conteúdo
Fórum Script Brasil
  • 0

PRECISO AJUDA PARA TERMINAR ESTE SCRIPT


joanita

Pergunta

neste código eu listo as diversas entradas na tabela, uma abaixo da outra... a minha questão é a seguinte, queria que desse para ao clicar num link "VER" (à frente de cada entrada) me abri-se a página "individual.php" com o conteudo total dessa entrada, em vez de mostrar so o "id, nome e suite"

LISTAR.PHP

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Lista de Reservas</title>
</head>
<body>

<?php
/*
    LISTAR.PHP
    Exibe todos os dados da tabela 'suites' já com paginação
*/

    // liga-se á base de dados
    include('ligar-bd.php');

    // inclui os estilos da página
    require_once("style.css");
    
    // número de resultados a ser exibido por página
    $per_page = 10;
    
    // pesquisa o total de páginas no banco de dados
    $result = mysql_query("SELECT * FROM suites");
    $total_results = mysql_num_rows($result);
    $total_pages = ceil($total_results / $per_page);

    // verifica se a variável 'page' está definida na URL (ex: listar.php?page=1)
    if (isset($_GET['page']) && is_numeric($_GET['page']))
    {
        $show_page = $_GET['page'];
        
        // verifica se o valor em $show_page é válido
        if ($show_page > 0 && $show_page <= $total_pages)
        {
            $start = ($show_page -1) * $per_page;
            $end = $start + $per_page;
        }
        else
        {
            // erro - mostra o primeiro conjunto de resultados
            $start = 0;
            $end = $per_page;
        }        
    }
    else
    {
        // se a página não estiver definida, mostra o primeiro conjunto de resultados
        $start = 0;
        $end = $per_page;
    }
    
    // mostra o titulo da pagina atual
    echo "<p align='center'><titulo>Lista Total de Reservas MMH</p></titulo><hr size='1'>";
        
    // exibe os dados existentes na tabela
    echo "<table align='center' width='500' border='0' cellpading='3' cellspacing='3' bgcolor='#004221'>";
    echo "<tr> <th bgcolor='#55572c'>ID</th> <th bgcolor='#55872c'>Nome</th> <th bgcolor='#55872c'>Suite</th> <th bgcolor='#55872c'>Opções</th></tr>";

    // faz um loop dos resultados pesquisados na base de dados e mostra-os na tabela
    for ($i = $start; $i < $end; $i++)
    {
        // certifica-se que o PHP não está a tentar mostrar resultados que não existem
        if ($i == $total_results) { break; }
    
        // mostra o conteúdo de cada linha da tabela
        echo "<tr>";
        echo '<td bgcolor="#55872c" align="center"><txt1>' . mysql_result($result, $i, 'id') . '</txt1></td>';
        echo '<td bgcolor="#00572c" align="center"><txt2>' . mysql_result($result, $i, 'nome') . '</txt2></td>';
        echo '<td bgcolor="#004221" align="center"><txt2>' . mysql_result($result, $i, 'suite') . '<txt2></td>';
        echo '<td bgcolor="#00572c" align="center"><txt1><b><i>&nbsp;<a href="editar.php?id=' . mysql_result($result, $i, 'id') . '"><img src="imagens/editar.png" border="0" alt="editar"></a>&nbsp;&nbsp;<a href="apagar.php?id=' . mysql_result($result, $i, 'id') . '"><img src="imagens/apagar.png" border="0" alt="apagar"></a>&nbsp;</i></b></txt1></td>';
        echo "</tr>";
    }
    // fecha a tabela
    echo "</table>";
    
?>

<table align='center' width='500' border='1' cellpading='3' cellspacing='3' bgcolor=''>
<td bgcolor='#55572c' align='center'><txt1>
<p align='center'><b><i><a href="adicionar.php">Adicionar Nova Reserva</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href='individual.php?page=1'>Outra Página</a></i></b></p>

<?PHP
    // mostra a paginação
    echo "</b></p><hr size='1'>";
    echo "<p align='center'><b>";
    echo "| ";
    for ($i = 1; $i <= $total_pages; $i++)
    {
        echo "<a href='listar.php?page=$i'>$i</a> | ";
    }
?>

</txt1></td></table>
</body>
</html>

 

 

abaixo o código que recupera todos os dados individuais de cada entrada (como teste coloquei a abrir a ID=7 porque é a única que tenho atualmente)

INDIVIDUAL.PHP

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Reserva Atual</title>
</head>
<body>

<?php
/*
    INDIVIDUAL.PHP
    Exibe todos os dados de uma determinada suite
*/

    // liga-se á base de dados
    include('ligar-bd.php');

    // inclui os estilos da página
    require_once("style.css");
    
    // pesquisa o total de páginas no banco de dados
    $result = mysql_query("SELECT * FROM suites WHERE (id = '7')");

    // mostra o titulo da pagina atual
    echo "<p align='center'><titulo>Reserva Atual</p></titulo><hr size='1'>";
        
    // mostra o conteúdo de cada linha da tabela
    echo "<table align='center' width='500' border='0' cellpading='3' cellspacing='3' bgcolor='#004221'>

     <tr><td align='right' width='150' height='32'><txt1>Nome:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;<font color='yellow'><b><i>" . mysql_result($result, $i, 'nome') .

"</b></i></txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Telefone:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'telefone') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Email:&nbsp;            </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'email') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Suite Reservada:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'suite') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Tipo de Reserva:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'tipo-reserva') . "    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Data Check-in:&nbsp;        </txt1></td><td bgcolor='#91c200'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'checkin') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Data Check-out:&nbsp;        </txt1></td><td bgcolor='#ff1f1f'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'checkout') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Late Check out:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'late-checkout') . "    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Valor já Pago:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;<b>    " . mysql_result($result, $i, 'pagamento') . " €</b>    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Hora de Chegada:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'hora-chegada') . "    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Nº Camas Extra:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'camas-extra') . "    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Nº Berços:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'berco') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Peq. Alm. no Quarto:&nbsp;    </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'pequeno-almoco') . "    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Jantar Incluído:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'jantar') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Data do Jantar:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'data-jantar') . "    </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Nº Animais:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'animais') . "        </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Atividades Incluídas:&nbsp;    </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'atividades') . "        </txt2></td></tr>",        
    "<tr><td align='right' width='150'><txt1>Serviço de Transporte:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'transporte') . "        </txt2></td></tr>",        
    "<tr><td align='right' width='150'><txt1>Pedido Especial:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    " . mysql_result($result, $i, 'pedido-especial') . "    </txt2></td></tr>";

    // fecha a tabela
    echo "</table>";
    
?>

<table align='center' width='500' border='1' cellpading='3' cellspacing='3' bgcolor=''>
<td bgcolor='#55572c' align='center'><txt1>
<p align='center'><b><i><a href="adicionar.php">Adicionar Nova Reserva</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href='listar.php?page=1'>Ver Todas as Reservas</a></i></b></p>
</txt1></td></table>
</body>
</html>

Editado por joanita
Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Você precisa criar um botão para exibir os detalhes de determinado registro do banco de dados certo? Existem algumas formas de fazer isso, creio que a mais simples seria passar o ID do registro que deseja exibir de forma mais detalhada via GET, ou seja pela URL do site, ficaria da seguinte forma:

O link que será inserido na tabela de listagem:
<a href="individual.php?id=<?php echo mysql_result($result, $i, 'id'); ?>">VER</a>

Agora na página individual.php ao invés de colocar manualmente um valor vamos inserir dinamicamente resgatando o valor que passarmos através do link acima, modificando o trecho do seu código:
$result = mysql_query("SELECT * FROM suites WHERE (id = $_GET['id'])");

Espero ter ajudado!

Link para o comentário
Compartilhar em outros sites

  • 0

no listar.php da esse erro Falkom: Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in .../listar.php on line 71

e no individual.php da esse: Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in .../individual.php on line 21

 

:(

 

alterei o listar.php e coloquei assim (já aparece o botão e ao clicar abre o individual.php) mas... continua a dar esse erro acima:

  <a href="individual.php?id=' . mysql_result($result, $i, 'id') . '"><img src="imagens/ver.png" border="0" alt="ver"></a>

Editado por joanita
Link para o comentário
Compartilhar em outros sites

  • 0

se eu na pagina individual.php tiver este codigo:

echo("A 1a. variável vale " . $_GET['id']);

consigo recuperar a variavel "id" (porque esta no URL), mas não consigo recuperar as restantes...

 

 

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Lista de Reservas</title>
</head>
<body>

<?php

/*
    INDIVIDUAL.PHP
    Exibe todos os dados da reserva com determinado "id" na tabela 'suites'
*/

    // liga-se á base de dados
    include('ligar-bd.php');

    // inclui os estilos da página
    require_once("style.css");
    
    // pesquisa o total de páginas no banco de dados
    $result = mysql_query("SELECT * FROM suites WHERE (id = $id)");

 

 

    //TESTE PARA RECEBER A VARIAVEL id (A FUNCIONAR)
    echo("A 1a. variável vale " . $_GET['id']);

    //TESTE PARA RECEBER TODAS AS VARIAVEIS DA RESERVA (não esta a funcionar)
    echo( "<table align='center' width='500' border='0' cellpading='3' cellspacing='3' bgcolor='#004221'>

     <tr><td align='right' width='150' height='32'><txt1>Nome:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['nome'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Telefone:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['telefone'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Email:&nbsp;            </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['email'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Suite Reservada:&nbsp;    </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['suite'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Tipo de Reserva:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['tipo_reserva'] ."        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Data Check-in:&nbsp;        </txt1></td><td bgcolor='#91c200'><txt2>&nbsp;&nbsp;    ". $_GET['checkin'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Data Check-out:&nbsp;        </txt1></td><td bgcolor='#ff1f1f'><txt2>&nbsp;&nbsp;    ". $_GET['checkout'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Late Check out:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['late_checkout'] ."        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Valor já Pago:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;<b>    ". $_GET['pagamento'] ." €</b>        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Hora de Chegada:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['hora_chegada'] ."        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Nº Camas Extra:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['camas_extra'] ."        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Nº Berços:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['berco'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Peq. Alm. no Quarto:&nbsp;    </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['pequeno_almoco'] ."        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Jantar Incluído:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['jantar'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Data do Jantar:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['data_jantar'] ."        </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Nº Animais:&nbsp;        </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['animais'] ."            </txt2></td></tr>"),
    ("<tr><td align='right' width='150'><txt1>Atividades Incluídas:&nbsp;    </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['atividades'] ."        </txt2></td></tr>"),        
    ("<tr><td align='right' width='150'><txt1>Serviço de Transporte:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $_GET['transporte'] ."        </txt2></td></tr>"),        
    ("<tr><td align='right' width='150'><txt1>Pedido Especial:&nbsp;    </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $_GET['pedido_especial'] ."        </txt2></td></tr>");

    // fecha a tabela
    echo "</table>";

?>

<table align='center' width='500' border='1' cellpading='3' cellspacing='3' bgcolor=''>
<td bgcolor='#55572c' align='center'><txt1>
<p align='center'><b><i><a href="adicionar.php">Adicionar Nova Reserva</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href='listar.php?page=1'>Ver Todas as Reservas</a></i></b></p>
</txt1></td></table>

</body>
</html>   

Editado por joanita
Link para o comentário
Compartilhar em outros sites

  • 0

Acho que estás a confundir um pouco as situações. Quando usas $_POST e $_GET, apenas consegues ir buscar elementos passados através de um formulário ou directamente da URL (query string). Assim, os campos da consulta à tabela não vão estar acessíveis a partir do array especial $_GET. Tens de fazer algo do género:

<?php
  $result = mysql_query("SELECT * FROM suites WHERE id = $id");
  if ($result && mysql_num_rows($result) > 0)
  {
    while ($row = mysql_fetch_assoc($result))
    {
      //aqui irás conseguir aceder aos campos da tabela através de um array associativo (ex: $row["nome"])
    }
  }

 

Atenção que, conforme já referido noutras ocasiões, deves pensar em actualizar o teu código para usar MySQLi ou PDO para aceder à BD.

Editado por wootzor
Link para o comentário
Compartilhar em outros sites

  • 0

eu utilizo um programa que é o E++ que converte automaticamente o mysql em mysqli... como ainda não domino o mysqli, no final depois de tudo estar a funcionar tento a conversao... epa isto devia ser uma coisa tão banal e esta a tornar-se cada dia mais complicado!

não estou a conseguir aplicar isso... ajuda aí, assim não da erro mas tambem não mostra nada, aparece a pagia em branco:

 

<?php
/*
    INDIVIDUAL.PHP
    Exibe todos os dados da reserva com determinado "id" na tabela 'suites'
*/

    // liga-se á base de dados
    include('ligar-bd.php');

    // inclui os estilos da página
    require_once("style.css");
    
    // pesquisa o total de páginas no banco de dados
    $result = mysql_query("SELECT * FROM suites WHERE id = $id");

     if ($result && mysql_num_rows($result) > 0)
     {
     while ($i = mysql_fetch_assoc($result))
     {

    //TESTE PARA RECEBER TODAS AS VARIAVEIS DA RESERVA
    echo "<table align='center' width='500' border='0' cellpading='3' cellspacing='3' bgcolor='#004221'>

     <tr><td align='right' width='150' height='32'><txt1>Nome:&nbsp;    </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $i['nome']. "            </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Telefone:&nbsp;        </txt1></td><td bgcolor='#00572c'><txt2>&nbsp;&nbsp;    ". $i['telefone'] ."            </txt2></td></tr>",
    "<tr><td align='right' width='150'><txt1>Email:&nbsp;            </txt1></td><td bgcolor='#004221'><txt2>&nbsp;&nbsp;    ". $i['email'] ."            </txt2></td></tr>";
   // fecha a tabela
    echo "</table>";
    }
    }

?>

Editado por joanita
Link para o comentário
Compartilhar em outros sites

  • 0

já funciona wootzor :) mas agora inda tenho outra coisa, não estou a conseguir gravar os dados do form...

 

<?php
/*
 ADICIONAR.PHP
 Permite adicionar novas entradas á base de dados
*/


    // HABILITA TODAS AS MENSAGENS DE ERRO
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL | E_STRICT );

    // inclui acesso ao servidor
    require_once("ligar-bd.php");

    // inclui os estilos da página
    require_once("style.css");

    // cria o formulário de edição
    // função que é facilmente removível.
    function renderForm($id, $nome, $telefone, $email, $suite, $tipo_reserva, $checkin, $checkout, $late_checkout, $pagamento, $hora_chegada, $camas_extra, $berco, $pequeno_almoco, $jantar, $data_jantar, $animais, $atividades, $transporte, $pedido_especial, $error)
    {
?>

<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>

$(document).ready(
function() {
    $("#datepicker1").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker2").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker3").datepicker({dateFormat: "dd-mm-yy"});
    }
);
</script>

<title>MMH</title>

</head>
<body>

<p align="center">
<titulo>ADICIONAR RESERVAS</titulo>
</p>

<form action="" method="post">
<p align="center">

<table width="450px" border="0" cellpading="4" cellspacing="8"  bgcolor="#f0f0f0">
    <tr>
        <td align="left">
            <label for="name">Nome: </label>
        </td>
        <td>
            <input type="text" name="nome" id="nome" value="">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="telefone">Telefone: </label>
        </td>
        <td>
            <input type="text" name="telefone" maxlength="9" size="9" onkeypress="return event.charCode >= 48 && event.charCode <= 57" value=""
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="email">Email: </label>
        </td>
        <td>
            <input type="text" name="email" id="email" size="9" value=""
        </td>
    </tr>

    <tr>
    <td align="left">
        <label for="suite">Suite: </label>
        </td>
        <td>
            <select name="suite" id="suite">
                <option value="Azul Céu">Azul Céu</option>
                <option value="Verde Esperança">Verde Esperança</option>
                <option value="Verde-Lima">Verde-Lima</option>
                <option value="Vermelho Paixão">Vermelho Paixão</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="tipo_reserva">Reservado via: </label>
        </td>
        <td>
            <select name="tipo_reserva" id="tipo_reserva">
                <option value="Booking">Booking</option>
                <option value="Trip Advisor">Trip Advisor</option>
                <option value="Site Oficial">Site Oficial</option>
                <option value="Pessoalmente">Pessoalmente</option>
                <option value="Outro">Outro</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkin">Check in: </label>
        </td>
        <td bgcolor='#91c200'>
            <input type="text" name="checkin" id="datepicker1" size="12" value="<?PHP echo $checkin;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkout">Check out: </label>
        </td>
        <td bgcolor='#ff1f1f'>
            <input type="text" name="checkout" id="datepicker2" size="12" value="<?PHP echo $checkout;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="late_checkout">Late Check out: </label>
        </td>
        <td>
            <select name="late_checkout" id="late_checkout">
                <option value="---">---</option>
                <option value="Sim (Máx. até ás 14h">Sim (Máx. até ás 14h)</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pagamento">Valor já Pago (€): </label>
        </td>
        <td>
            <input type="text" name="pagamento" id="pagamento" value=" 0.00€">
        </td>
    </tr>
    
    <tr>
        <td align="left">
            <label for="hora_chegada">Hora de Chegada: </label>
        </td>
        <td>
            <select type="text" name="hora_chegada" id="hora_chegada">
            <?php
            for ($i = 0;$i<=23;$i++)
                        {
                echo ($i < 10) ? "<option>0" . $i . ":00</option>" : "<option>" . $i . ":00</option>";
                echo ($i < 10) ? "<option>0" . $i . ":30</option>" : "<option>" . $i . ":30</option>";
                        }
            ?>    
            <?PHP echo $hora_chegada;?>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="camas_extra">Camas Extra: </label>
        </td>
        <td>
            <select name="camas_extra" id="camas_extra">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="berco">Berço: </label>
        </td>
        <td>
            <select name="berco" id="berco">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pequeno_almoco">Peq. Almoço no Quarto: </label>
        </td>
        <td>
            <select name="pequeno_almoco" id="pequeno_almoco">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="jantar">Jantar Incluído: </label>
        </td>
        <td>
            <select name="jantar" id="jantar">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select name="jantar">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="data_jantar">Data do Jantar: </label>
        </td>
        <td>
            <input type="text" name="data_jantar" id="datepicker3" value="<?PHP echo $data_jantar;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="numero_animais">Nº de Animais: </label>
        </td>
        <td>
            <select name="numero_animais" id="numero_animais">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
                <option value="3">3</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="atividades">Atividades Incluídas: </label>
        </td>
        <td>
            <select name="atividades" id="atividades">
                <option value="---">---</option>
                <option value="Mota de Água">Mota de Água</option>
                <option value="Geocaching">Geocaching</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="transporte">Serviço de Transporte: </label>
        </td>
        <td>
            <select name="transporte" id="transporte">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pedido_especial">Pedido Especial: </label>
        </td>
        <td>
            <textarea name="pedido_especial" id="pedido_especial" value="<?PHP echo $pedido_especial;?>"> Não tem pedidos especiais...</textarea>
            <input type="hidden" name="enviar" id="enviar" value="S">
    </tr>

    <tr>
        <td align="left">
            <input type ="submit" value="Adicionar Reserva">
        </td>
    </tr>

</table>
</p>
</form>

<?php
}
 // verifica se o formulário foi bem enviado, caso tenha sido... guarda o formulário na base de dados
 if (isset($_POST['submit']))
 {
 // confirma que o valor 'id' é um número inteiro válido antes de obter os dados do formulário
 if (is_numeric($_POST['id']))
 {
 // obtem os dados do formulário, certificando-se que é válido
 $id = $_POST['id'];
 $nome = mysql_real_escape_string(htmlspecialchars($_POST['nome']));
 $telefone = mysql_real_escape_string(htmlspecialchars($_POST['telefone']));
 $email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
 $suite = mysql_real_escape_string(htmlspecialchars($_POST['suite']));
 $checkin = mysql_real_escape_string(htmlspecialchars($_POST['checkin']));
 $checkout = mysql_real_escape_string(htmlspecialchars($_POST['checkout']));
 $late_checkout = mysql_real_escape_string(htmlspecialchars($_POST['late_checkout']));
 $pagamento = mysql_real_escape_string(htmlspecialchars($_POST['pagamento']));
 $hora_chegada = mysql_real_escape_string(htmlspecialchars($_POST['hora_chegada']));
 $camas_extra = mysql_real_escape_string(htmlspecialchars($_POST['camas_extra']));
 $berco = mysql_real_escape_string(htmlspecialchars($_POST['berco']));
 $pequeno_almoco = mysql_real_escape_string(htmlspecialchars($_POST['pequeno_almoco']));
 $jantar = mysql_real_escape_string(htmlspecialchars($_POST['jantar']));
 $data_jantar = mysql_real_escape_string(htmlspecialchars($_POST['data_jantar']));
 $animais = mysql_real_escape_string(htmlspecialchars($_POST['animais']));
 $atividades = mysql_real_escape_string(htmlspecialchars($_POST['atividades']));
 $transpote = mysql_real_escape_string(htmlspecialchars($_POST['transporte']));
 $pedidio_especial = mysql_real_escape_string(htmlspecialchars($_POST['pedido_especial']));
 
 // verifique se os campos obrigatórios estão preenchidos
 if ($nome == '' || $telefone == '' || $suite == '' || $checkin == '' || $checkout == '' || $pagamento == '')
 {
 // cria uma mensagem de erro
 $error = 'ERRO:
Por favor, preencha todos os campos requisitados!';
 
 // exibe o erro
 renderForm($id, $nome, $suite, $error);
 }
 else
 {
 // grava os dados na base de dados
 mysql_query("INSERT INTO suites VALUES nome='$nome', telefone='$telefone', email='$email', suite='$suite', tipo_reserva='$tipo_reserva', checkin='$checkin', checkout='$checkout', late_checkout='$late_checkout', pagamento='$pagamento', hora_chegada='$hora_chegada', camas_extra='$camas_extra', berco='$berco', pequeno_almoco='$pequeno_almoco', jantar='$jantar', data_jantar='$data_jantar', animais='$animais', atividades='$atividades', transporte='$transporte', pedido_especial='$pedido_especial' WHERE id='$id'")
 or die(mysql_error());
 
 // após gravar redireciona para a página de listagem
 header("Location: listar.php");
 }
 }
 else
 {
 // se o 'id' não for válido, exibe um erro
 echo 'Erro! ID inválido';
 }
 }
 else
 // Se o formulário não tiver sido apresentado, obtem os dados da base de dados e apresenta o formulário
 {
 
 // obtem o valor 'id' do URL (caso exista), certificando-se que é válido (verifica se é numérico / maior do que 0)
 if (isset($_GET['id']) && is_numeric($_GET['id']) && $_GET['id'] > 0)
 {
 // query da base de dados
 $id = $_GET['id'];
 $result = mysql_query("SELECT * FROM suites WHERE id=$id")
 or die(mysql_error());
 $row = mysql_fetch_array($result);
 
 // verifica se o 'id' combina com alguma linha existente na base de dados
 if($row)
 {
 
 // pega nos dados da base de dados
 $nome = $row['nome'];
 $telefone = $row['telefone'];
 $email = $row['email'];
 $suite = $row['suite'];
 $tipo_reserva = $row['tipo_reserva'];
 $checkin = $row['checkin'];
 $checkout = $row['checkout'];
 $late_checkout = $row['late_checkout'];
 $pagamento = $row['pagamento'];
 $hora_chegada = $row['hora_chegada'];
 $camas_extra = $row['camas_extra'];
 $berco = $row['berco'];
 $pequeno_almoco = $row['pequeno_almoco'];
 $jantar = $row['jantar'];
 $data_jantar = $row['data_jantar'];
 $animais = $row['animais'];
 $atividades = $row['atividades'];
 $transporte = $row['transporte'];
 $pedido_especial = $row['pedido_especial'];
 
 // mostra o formulário
 renderForm($id, $nome, $telefone, $email, $suite, $tipo_reserva, $checkin, $checkout, $late_checkout, $pagamento, $hora_chegada, $camas_extra, $berco, $pequeno_almoco, $jantar, $data_jantar, $animais, $atividades, $transporte, $pedido_especial, '');
 }
 else
 // se nenhuma correspondência existir, mostra mensagem
 {
 echo "Sem resultados!";
 }
 }
 else
 // se o 'id' na URL não for válido ou se não houver nenhum valor 'id', mostra um erro
 {
 echo '<p align="center">Erro! Não existem resultados com esse ID.</p>';
 }
 }
?>

<table align='center' width='500' border='1' cellpading='3' cellspacing='3' bgcolor=''>
<td bgcolor='#55572c' align='center'><txt1>
<p align='center'><b><i><a href='listar.php?page=1'>Ver Todas as Reservas</a></i></b></p>
</txt1></td></table>
</body>
</html>

 

Link para o comentário
Compartilhar em outros sites

  • 0

é mesmo uma serie de erros com o php, o melhor é pegar no html e reconstruir a parte do php limpinho... tenho isto ate agora ve la:

 

<?php
/*
 ADICIONAR.PHP
 Permite adicionar novas entradas á base de dados
*/

    // HABILITA TODAS AS MENSAGENS DE ERRO
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL | E_STRICT );

    // inclui acesso ao servidor
    require_once("ligar-bd.php");

    // inclui os estilos da página
    require_once("style.css");
?>

<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>

$(document).ready(
function() {
    $("#datepicker1").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker2").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker3").datepicker({dateFormat: "dd-mm-yy"});
    }
);
</script>

<title>MMH</title>

</head>
<body>

<p align="center">
<titulo>ADICIONAR RESERVAS</titulo>
</p>

<form action="" method="post">
<p align="center">

<table width="450px" border="0" cellpading="4" cellspacing="8"  bgcolor="#f0f0f0">
    <tr>
        <td align="left">
            <label for="name">Nome: </label>
        </td>
        <td>
            <input type="text" name="nome" id="nome" value="">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="telefone">Telefone: </label>
        </td>
        <td>
            <input type="text" name="telefone" maxlength="9" size="9" onkeypress="return event.charCode >= 48 && event.charCode <= 57" value=""
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="email">Email: </label>
        </td>
        <td>
            <input type="text" name="email" id="email" size="9" value=""
        </td>
    </tr>

    <tr>
    <td align="left">
        <label for="suite">Suite: </label>
        </td>
        <td>
            <select name="suite" id="suite">
                <option value="Azul Céu">Azul Céu</option>
                <option value="Verde Esperança">Verde Esperança</option>
                <option value="Verde-Lima">Verde-Lima</option>
                <option value="Vermelho Paixão">Vermelho Paixão</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="tipo_reserva">Reservado via: </label>
        </td>
        <td>
            <select name="tipo_reserva" id="tipo_reserva">
                <option value="Booking">Booking</option>
                <option value="Trip Advisor">Trip Advisor</option>
                <option value="Site Oficial">Site Oficial</option>
                <option value="Pessoalmente">Pessoalmente</option>
                <option value="Outro">Outro</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkin">Check in: </label>
        </td>
        <td bgcolor='#91c200'>
            <input type="text" name="checkin" id="datepicker1" size="12" value="<?PHP echo $checkin;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkout">Check out: </label>
        </td>
        <td bgcolor='#ff1f1f'>
            <input type="text" name="checkout" id="datepicker2" size="12" value="<?PHP echo $checkout;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="late_checkout">Late Check out: </label>
        </td>
        <td>
            <select name="late_checkout" id="late_checkout">
                <option value="---">---</option>
                <option value="Sim (Máx. até ás 14h">Sim (Máx. até ás 14h)</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pagamento">Valor já Pago (€): </label>
        </td>
        <td>
            <input type="text" name="pagamento" id="pagamento" value=" 0.00€">
        </td>
    </tr>
    
    <tr>
        <td align="left">
            <label for="hora_chegada">Hora de Chegada: </label>
        </td>
        <td>
            <select type="text" name="hora_chegada" id="hora_chegada">
            <?php
            for ($i = 0;$i<=23;$i++)
                        {
                echo ($i < 10) ? "<option>0" . $i . ":00</option>" : "<option>" . $i . ":00</option>";
                echo ($i < 10) ? "<option>0" . $i . ":30</option>" : "<option>" . $i . ":30</option>";
                        }
            ?>    
            <?PHP echo $hora_chegada;?>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="camas_extra">Camas Extra: </label>
        </td>
        <td>
            <select name="camas_extra" id="camas_extra">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="berco">Berço: </label>
        </td>
        <td>
            <select name="berco" id="berco">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pequeno_almoco">Peq. Almoço no Quarto: </label>
        </td>
        <td>
            <select name="pequeno_almoco" id="pequeno_almoco">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="jantar">Jantar Incluído: </label>
        </td>
        <td>
            <select name="jantar" id="jantar">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select name="jantar">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="data_jantar">Data do Jantar: </label>
        </td>
        <td>
            <input type="text" name="data_jantar" id="datepicker3" value="<?PHP echo $data_jantar;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="numero_animais">Nº de Animais: </label>
        </td>
        <td>
            <select name="numero_animais" id="numero_animais">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
                <option value="3">3</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="atividades">Atividades Incluídas: </label>
        </td>
        <td>
            <select name="atividades" id="atividades">
                <option value="---">---</option>
                <option value="Mota de Água">Mota de Água</option>
                <option value="Geocaching">Geocaching</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="transporte">Serviço de Transporte: </label>
        </td>
        <td>
            <select name="transporte" id="transporte">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pedido_especial">Pedido Especial: </label>
        </td>
        <td>
            <textarea name="pedido_especial" id="pedido_especial" value="<?PHP echo $pedido_especial;?>"> Não tem pedidos especiais...</textarea>
            <input type="hidden" name="enviar" id="enviar" value="S">
    </tr>

    <tr>
        <td align="left">
            <input type ="submit" name="submit" id="submit" value="Adicionar Reserva">
        </td>
    </tr>

</table>
</p>
</form>

Link para o comentário
Compartilhar em outros sites

  • 0

adicionei o seguinte codigo PHP a esse HTML

<?php
/*
 ADICIONAR.PHP
 Permite adicionar novas entradas á base de dados
*/

    // HABILITA TODAS AS MENSAGENS DE ERRO
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL | E_STRICT );

    // inclui os estilos da página
    require_once("style.css");

    // inclui acesso ao servidor
    require_once("ligar-bd.php");

    // Se existir algum erro é mostrado
    if ($error != '')
    {
    echo '<div style="padding:4px; border:1px solid red; color:red;">'.$error.'</div>';
    }

 // verifica se o formulário foi bem enviado, caso tenha sido... guarda o formulário na base de dados
 if (isset($_POST['submit']))
 {

 $id =            $POST['id'];
 $nome =        $POST['nome'];
 $telefone =         $POST['telefone'];
 $email =        $POST['email'];
 $suite =        $POST['suite'];
 $tipo_reserva =     $POST['tipo_reserva'];
 $checkin =         $POST['checkin'];
 $checkout =         $POST['checkout'];
 $late_checkout =     $POST['late_checkout'];
 $pagamento =         $POST['pagamento'];
 $hora_chegada =     $POST['hora_chegada'];
 $camas_extra =     $POST['camas_extra'];
 $berco =         $POST['berco'];
 $pequeno_almoco =     $POST['pequeno_almoco'];
 $jantar =         $POST['jantar'];
 $data_jantar =     $POST['data_jantar'];
 $animais =         $POST['animais'];
 $atividades =         $POST['atividades'];
 $transporte =         $POST['transporte'];
 $pedido_especial =     $POST['pedido_especial'];

// insere os dados na base de dados
$sql  = "INSERT INTO suites ('nome', 'telefone', 'email', 'suite', 'tipo_reserva', 'checkin', 'checkout', 'late_checkout', 'pagamento', 'hora_chegada', 'camas_extra', 'berco', 'pequeno_almoco', 'jantar',

'data_jantar', 'animais', 'atividades', 'transporte', 'pedido_especial') VALUES

('$nome','$telefone','$email','$suite','$tipo_reserva','$checkin','$checkout','$late_checkout','$pagamento','$hora_chegada','$camas_extra','$berco','$pequeno_almoco','$jantar','$data_jantar','$animais','$atividade

s','$transporte','$pedido_especial)" or die(mysql_error());

 // após gravar redireciona para a página de listagem
 echo "<p align='center'>Adicionado com sucesso!</p>";
 header("Location: listar.php");
 }
 else
 {
 echo "Nada foi gravado!";
 }

?>

 

mas mal abro a pagina "adicionar.php" no topo aparece logo isto:

Notice: Undefined variable: error in /home/rpublici/public_html/matodoshomens/adicionar.php on line 18
Nada foi gravado!

e quando clico em enviar os dados do form aparece:

Notice: Undefined variable: error in /.../adicionar.php on line 18

Notice: Undefined variable: POST in /.../adicionar.php on line 27... etc ate ao 46

Editado por joanita
Link para o comentário
Compartilhar em outros sites

  • 0

1. onde está:
$POST['pagamento'];
$POST['hora_chegada'];

etc.

troque por:

$_POST['pagamento'];
$_POST['hora_chegada'];

etc.

2. novamente você esta declarando uma variavel:
$sql  = "INSERT INTO suites ( etc.

precisa transformar isso num comando ao banco de dados, ex:

$sql= mysql_query("INSERT INTO ETC.) or die(mysql_error());

como já expliquei em outro tópico

3. tire as aspas dos nomes de colunas:
'nome', 'telefone', 'email', 'suite', 'tipo_reserva', 'checkin', 'checkout',
etc.

deixe assim:

nome, telefone, email, suite, tipo_reserva, checkin, checkout,

etc.

4. na ultima variavel faltou uma aspa simples:

'$pedido_especial

a proposito, sugiro que de uma melhorada nos teus "ifs" (lógica);
ex:

if(isset(botao gravar))
{
executa inserção
}

if(inserção ok)
{
exibe mensagem OU redireciona
(não tem como fazer as 2 operações simultaneamente,a menos que exiba a mensagem,de um "delay" e depois redireciona
}

else{
exibe mensagem "nada foi gravado"
}

 

Link para o comentário
Compartilhar em outros sites

  • 0

continua a não dar... está assim atualmente:

<?php
/*
 ADICIONAR.PHP
 Permite adicionar novas entradas á base de dados
*/

    // HABILITA TODAS AS MENSAGENS DE ERRO
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL | E_STRICT );

    // inclui os estilos da página
    require_once("style.css");

    // inclui acesso ao servidor
    require_once("ligar-bd.php");

    // Se existir algum erro é mostrado
    if ($error != '')
    {
    echo '<div style="padding:4px; border:1px solid red; color:red;">'.$error.'</div>';
    }

 // verifica se o formulário foi bem enviado, caso tenha sido... guarda o formulário na base de dados
 if (isset($_POST['submit']))
 {

 $id =            $_POST['id'];
 $nome =        $_POST['nome'];
 $telefone =         $_POST['telefone'];
 $email =        $_POST['email'];
 $suite =        $_POST['suite'];
 $tipo_reserva =     $_POST['tipo_reserva'];
 $checkin =         $_POST['checkin'];
 $checkout =         $_POST['checkout'];
 $late_checkout =     $_POST['late_checkout'];
 $pagamento =         $_POST['pagamento'];
 $hora_chegada =     $_POST['hora_chegada'];
 $camas_extra =     $_POST['camas_extra'];
 $berco =         $_POST['berco'];
 $pequeno_almoco =     $_POST['pequeno_almoco'];
 $jantar =         $_POST['jantar'];
 $data_jantar =     $_POST['data_jantar'];
 $animais =         $_POST['animais'];
 $atividades =         $_POST['atividades'];
 $transporte =         $_POST['transporte'];
 $pedido_especial =     $_POST['pedido_especial'];

// insere os dados na base de dados
$sql = mysql_query("INSERT INTO suites (nome, telefone, email, suite, tipo_reserva, checkin, checkout, late_checkout, pagamento, hora_chegada, camas_extra, berco,

pequeno_almoco, jantar, data_jantar, animais, atividades, transporte, pedido_especial) VALUES

('$nome','$telefone','$email','$suite','$tipo_reserva','$checkin','$checkout','$late_checkout','$pagamento','$hora_chegada','$camas_extra','$berco','$pequeno_almoco','$jant

ar','$data_jantar','$animais','$atividades','$transporte','$pedido_especial") or die(mysql_error());

 // após gravar redireciona para a página de listagem
 echo "<p align='center'>Adicionado com sucesso!</p>";
 }
 else
 {
 echo "Nada foi gravado!";
 }

?>

<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>

$(document).ready(
function() {
    $("#datepicker1").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker2").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker3").datepicker({dateFormat: "dd-mm-yy"});
    }
);
</script>

<title>MMH</title>

</head>
<body>

<p align="center">
<titulo>ADICIONAR RESERVAS</titulo>
</p>

<form action="" method="post">
<p align="center">

<table width="450px" border="0" cellpading="4" cellspacing="8"  bgcolor="#f0f0f0">
    <tr>
        <td align="left">
            <label for="name">Nome: </label>
        </td>
        <td>
            <input type="text" name="nome" id="nome" value="">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="telefone">Telefone: </label>
        </td>
        <td>
            <input type="text" name="telefone" maxlength="9" size="9" onkeypress="return event.charCode >= 48 && event.charCode <= 57" value=""
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="email">Email: </label>
        </td>
        <td>
            <input type="text" name="email" id="email" size="9" value=""
        </td>
    </tr>

    <tr>
    <td align="left">
        <label for="suite">Suite: </label>
        </td>
        <td>
            <select name="suite" id="suite">
                <option value="Azul Céu">Azul Céu</option>
                <option value="Verde Esperança">Verde Esperança</option>
                <option value="Verde-Lima">Verde-Lima</option>
                <option value="Vermelho Paixão">Vermelho Paixão</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="tipo_reserva">Reservado via: </label>
        </td>
        <td>
            <select name="tipo_reserva" id="tipo_reserva">
                <option value="Booking">Booking</option>
                <option value="Trip Advisor">Trip Advisor</option>
                <option value="Site Oficial">Site Oficial</option>
                <option value="Pessoalmente">Pessoalmente</option>
                <option value="Outro">Outro</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkin">Check in: </label>
        </td>
        <td bgcolor='#91c200'>
            <input type="text" name="checkin" id="datepicker1" size="12" value="<?PHP echo $checkin;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkout">Check out: </label>
        </td>
        <td bgcolor='#ff1f1f'>
            <input type="text" name="checkout" id="datepicker2" size="12" value="<?PHP echo $checkout;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="late_checkout">Late Check out: </label>
        </td>
        <td>
            <select name="late_checkout" id="late_checkout">
                <option value="---">---</option>
                <option value="Sim (Máx. até ás 14h">Sim (Máx. até ás 14h)</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pagamento">Valor já Pago (€): </label>
        </td>
        <td>
            <input type="text" name="pagamento" id="pagamento" value=" 0.00€">
        </td>
    </tr>
    
    <tr>
        <td align="left">
            <label for="hora_chegada">Hora de Chegada: </label>
        </td>
        <td>
            <select type="text" name="hora_chegada" id="hora_chegada">
            <?php
            for ($i = 0;$i<=23;$i++)
                        {
                echo ($i < 10) ? "<option>0" . $i . ":00</option>" : "<option>" . $i . ":00</option>";
                echo ($i < 10) ? "<option>0" . $i . ":30</option>" : "<option>" . $i . ":30</option>";
                        }
            ?>    
            <?PHP echo $hora_chegada;?>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="camas_extra">Camas Extra: </label>
        </td>
        <td>
            <select name="camas_extra" id="camas_extra">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="berco">Berço: </label>
        </td>
        <td>
            <select name="berco" id="berco">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pequeno_almoco">Peq. Almoço no Quarto: </label>
        </td>
        <td>
            <select name="pequeno_almoco" id="pequeno_almoco">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="jantar">Jantar Incluído: </label>
        </td>
        <td>
            <select name="jantar" id="jantar">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select name="jantar">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="data_jantar">Data do Jantar: </label>
        </td>
        <td>
            <input type="text" name="data_jantar" id="datepicker3" value="<?PHP echo $data_jantar;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="numero_animais">Nº de Animais: </label>
        </td>
        <td>
            <select name="numero_animais" id="numero_animais">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
                <option value="3">3</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="atividades">Atividades Incluídas: </label>
        </td>
        <td>
            <select name="atividades" id="atividades">
                <option value="---">---</option>
                <option value="Mota de Água">Mota de Água</option>
                <option value="Geocaching">Geocaching</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="transporte">Serviço de Transporte: </label>
        </td>
        <td>
            <select name="transporte" id="transporte">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pedido_especial">Pedido Especial: </label>
        </td>
        <td>
            <textarea name="pedido_especial" id="pedido_especial" value="<?PHP echo $pedido_especial;?>"> Não tem pedidos especiais...</textarea>
            <input type="hidden" name="enviar" id="enviar" value="S">
    </tr>

    <tr>
        <td align="left">
            <input type ="submit" name="submit" id="submit" value="Adicionar Reserva">
        </td>
    </tr>

</table>
</p>
</form>

<table align='center' width='500' border='1' cellpading='3' cellspacing='3' bgcolor=''>
<td bgcolor='#55572c' align='center'><txt1>
<p align='center'><b><i><a href='listar.php?page=1'>Ver Todas as Reservas</a></i></b></p>
</txt1></td></table>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0
$sql = mysql_query("INSERT INTO suites (nome, telefone, email, suite, tipo_reserva, checkin, checkout, late_checkout, pagamento, hora_chegada, camas_extra, berco, pequeno_almoco, jantar, data_jantar, animais, atividades, transporte, pedido_especial) VALUES ('$nome','$telefone','$email','$suite','$tipo_reserva','$checkin','$checkout','$late_checkout','$pagamento','$hora_chegada','$camas_extra','$berco','$pequeno_almoco','$jantar','$data_jantar','$animais','$atividades','$transporte','$pedido_especial'");

Falta fechar uma plica a seguir a $pedido_especial.

Link para o comentário
Compartilhar em outros sites

  • 0

tens razao, mas n da na mesma, aparece-me isto:

Notice: Undefined index: id in /.../adicionar.php on line 27

Notice: Undefined index: animais in /.../adicionar.php on line 43
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Link para o comentário
Compartilhar em outros sites

  • 0

Linha 43: A combo box (select) chama-se 'numero_animais' e não apenas 'animais'.

Se estás a criar uma nova reserva, ela ainda não tem um ID associado, logo não precisas da linha 27. De qualquer forma, só consegues ir buscar elementos passados na URL a partir do array $_GET (a tal questão da query string), o $_POST só recebe os dados de formulários que usem esse método de envio para o servidor.

Editado por wootzor
Link para o comentário
Compartilhar em outros sites

  • 0

já corrigi a 43, bem eu simplifiquei a aparencia do sql e retirei um erro inicial, mas ainda ao enviar aparece: Notice: Undefined index: id in /.../adicionar.php on line 21
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 39

 

alem disso dentro dos campos checkin/checkout/data_jantar em vez de aparecer em branco aparece: <br /><b>Notice</b>:  Undefined variable: checkout in <b>/.../adicionar.php</b> on line <b>193</b><br /> (isto abre um calendario para selecionar as datas)

e por fim não envia nada lol... há e tambem aparece logo o erro: ERRO: Não foi possível adicionar a reserva! no inicio mesmo antes de enviar

<?php
/*
 ADICIONAR.PHP
 Permite adicionar novas entradas á base de dados
*/

    // HABILITA TODAS AS MENSAGENS DE ERRO
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL | E_STRICT );

    // inclui os estilos da página
    require_once("style.css");

    // inclui acesso ao servidor
    require_once("ligar-bd.php");

 // verifica se o formulário foi bem enviado, caso tenha sido... guarda o formulário na base de dados
 if (isset($_POST['submit']))
 {

 $id =            $_POST['id'];
 $nome =        $_POST['nome'];
 $telefone =         $_POST['telefone'];
 $email =        $_POST['email'];
 $suite =        $_POST['suite'];
 $tipo_reserva =     $_POST['tipo_reserva'];
 $checkin =         $_POST['checkin'];
 $checkout =         $_POST['checkout'];
 $late_checkout =     $_POST['late_checkout'];
 $pagamento =         $_POST['pagamento'];
 $hora_chegada =     $_POST['hora_chegada'];
 $camas_extra =     $_POST['camas_extra'];
 $berco =         $_POST['berco'];
 $pequeno_almoco =     $_POST['pequeno_almoco'];
 $jantar =         $_POST['jantar'];
 $data_jantar =     $_POST['data_jantar'];
 $animais =         $_POST['animais'];
 $atividades =         $_POST['atividades'];
 $transporte =         $_POST['transporte'];
 $pedido_especial =     $_POST['pedido_especial'];

// insere os dados na base de dados
$sql = mysql_query("INSERT INTO suites (
nome,
telefone,
email,
suite,
tipo_reserva,
checkin,
checkout,
late_checkout,
pagamento,
hora_chegada,
camas_extra,
berco, pequeno_almoco,
jantar, data_jantar,
animais, atividades,
transporte,
pedido_especial

) VALUES (

'$nome',
'$telefone',
'$email',
'$suite',
'$tipo_reserva',
'$checkin',
'$checkout',
'$late_checkout',
'$pagamento',
'$hora_chegada',
'$camas_extra',
'$berco',
'$pequeno_almoco',
'$jantar',
'$data_jantar',
'$animais',
'$atividades',
'$transporte',
'$pedido_especial'
") or die(mysql_error());

 // após gravar mostra a mensagem de sucesso ou erro
 echo "<br><div style='width:440px; margin-left:auto; margin-right:auto; padding:4px; border:2px solid red; color:red;'><h3><p align='center'><font color='red'>Reserva

adicionada com sucesso!</font></p></h3></div>";
 }
 else
 {
 echo "<br><div style='width:440px; margin-left:auto; margin-right:auto; padding:4px; border:2px solid red; color:red;'><h3><p align='center'><font color='red'>ERRO: Não

foi possível adicionar a reserva!</font></p></h3></div>";
 }

?>

<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>

$(document).ready(
function() {
    $("#datepicker1").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker2").datepicker({dateFormat: "dd-mm-yy"});
    $("#datepicker3").datepicker({dateFormat: "dd-mm-yy"});
    }
);
</script>

<title>MMH</title>

</head>
<body>

<p align="center">
<titulo>ADICIONAR RESERVAS</titulo>
</p>

<form action="" method="post">
<p align="center">

<table width="450px" border="0" cellpading="4" cellspacing="8"  bgcolor="#f0f0f0">
    <tr>
        <td align="left">
            <label for="name">Nome: </label>
        </td>
        <td>
            <input type="text" name="nome" id="nome" value="">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="telefone">Telefone: </label>
        </td>
        <td>
            <input type="text" name="telefone" maxlength="9" size="9" onkeypress="return event.charCode >= 48 && event.charCode <= 57" value=""
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="email">Email: </label>
        </td>
        <td>
            <input type="text" name="email" id="email" size="9" value=""
        </td>
    </tr>

    <tr>
    <td align="left">
        <label for="suite">Suite: </label>
        </td>
        <td>
            <select name="suite" id="suite">
                <option value="Azul Céu">Azul Céu</option>
                <option value="Verde Esperança">Verde Esperança</option>
                <option value="Verde-Lima">Verde-Lima</option>
                <option value="Vermelho Paixão">Vermelho Paixão</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="tipo_reserva">Reservado via: </label>
        </td>
        <td>
            <select name="tipo_reserva" id="tipo_reserva">
                <option value="Booking">Booking</option>
                <option value="Trip Advisor">Trip Advisor</option>
                <option value="Site Oficial">Site Oficial</option>
                <option value="Pessoalmente">Pessoalmente</option>
                <option value="Outro">Outro</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkin">Check in: </label>
        </td>
        <td bgcolor='#91c200'>
            <input type="text" name="checkin" id="datepicker1" size="12" value="<?PHP echo $checkin;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="checkout">Check out: </label>
        </td>
        <td bgcolor='#ff1f1f'>
            <input type="text" name="checkout" id="datepicker2" size="12" value="<?PHP echo $checkout;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="late_checkout">Late Check out: </label>
        </td>
        <td>
            <select name="late_checkout" id="late_checkout">
                <option value="---">---</option>
                <option value="Sim (Máx. até ás 14h">Sim (Máx. até ás 14h)</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pagamento">Valor já Pago (€): </label>
        </td>
        <td>
            <input type="text" name="pagamento" id="pagamento" value=" 0.00€">
        </td>
    </tr>
    
    <tr>
        <td align="left">
            <label for="hora_chegada">Hora de Chegada: </label>
        </td>
        <td>
            <select type="text" name="hora_chegada" id="hora_chegada">
            <?php
            for ($i = 0;$i<=23;$i++)
                        {
                echo ($i < 10) ? "<option>0" . $i . ":00</option>" : "<option>" . $i . ":00</option>";
                echo ($i < 10) ? "<option>0" . $i . ":30</option>" : "<option>" . $i . ":30</option>";
                        }
            ?>    
            <?PHP echo $hora_chegada;?>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="camas_extra">Camas Extra: </label>
        </td>
        <td>
            <select name="camas_extra" id="camas_extra">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="berco">Berço: </label>
        </td>
        <td>
            <select name="berco" id="berco">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pequeno_almoco">Peq. Almoço no Quarto: </label>
        </td>
        <td>
            <select name="pequeno_almoco" id="pequeno_almoco">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="jantar">Jantar Incluído: </label>
        </td>
        <td>
            <select name="jantar" id="jantar">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select name="jantar">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="data_jantar">Data do Jantar: </label>
        </td>
        <td>
            <input type="text" name="data_jantar" id="datepicker3" value="<?PHP echo $data_jantar;?>">
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="animais">Nº de Animais: </label>
        </td>
        <td>
            <select name="animais" id="animais">
                <option value="---">---</option>
                <option value="1">1</option>
                <option value="2">2</option>
                <option value="3">3</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="atividades">Atividades Incluídas: </label>
        </td>
        <td>
            <select name="atividades" id="atividades">
                <option value="---">---</option>
                <option value="Mota de Água">Mota de Água</option>
                <option value="Geocaching">Geocaching</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="transporte">Serviço de Transporte: </label>
        </td>
        <td>
            <select name="transporte" id="transporte">
                <option value="---">---</option>
                <option value="Sim">Sim</option>
            </select>
        </td>
    </tr>

    <tr>
        <td align="left">
            <label for="pedido_especial">Pedido Especial: </label>
        </td>
        <td>
            <textarea name="pedido_especial" id="pedido_especial" value="<?PHP echo $pedido_especial;?>"> Não tem pedidos especiais...</textarea>
            <input type="hidden" name="enviar" id="enviar" value="S">
    </tr>

    <tr>
        <td align="left">
            <input type ="submit" name="submit" id="submit" value="Adicionar Reserva">
        </td>
    </tr>

</table>
</p>
</form>

<table align='center' width='500' border='1' cellpading='3' cellspacing='3' bgcolor=''>
<td bgcolor='#55572c' align='center'><txt1>
<p align='center'><b><i><a href='listar.php?page=1'>Ver Todas as Reservas</a></i></b></p>
</txt1></td></table>
</body>
</html>

Editado por joanita
Link para o comentário
Compartilhar em outros sites

  • 0

A questão da mensagem de erro é simples. Estás a dizer que se o formulário for enviado correctamente, aparece a mensagem de êxito. Porém, se a variável $_POST estiver vazia (i. e., se acabaste de entrar na página e ainda não enviaste o formulário), vais receber a mensagem de erro. Ou seja, o que precisas é de verificar se a inserção na BD correu bem ou não e mostrar a mensagem correspondente apenas nessa altura.

<?php
(...)
// verifica se o formulário foi bem enviado, caso tenha sido... guarda o formulário na base de dados
 if (isset($_POST['submit']))
 {

 $id =            $_POST['id'];
 $nome =        $_POST['nome'];
 $telefone =         $_POST['telefone'];
 $email =        $_POST['email'];
 $suite =        $_POST['suite'];
 $tipo_reserva =     $_POST['tipo_reserva'];
 $checkin =         $_POST['checkin'];
 $checkout =         $_POST['checkout'];
 $late_checkout =     $_POST['late_checkout'];
 $pagamento =         $_POST['pagamento'];
 $hora_chegada =     $_POST['hora_chegada'];
 $camas_extra =     $_POST['camas_extra'];
 $berco =         $_POST['berco'];
 $pequeno_almoco =     $_POST['pequeno_almoco'];
 $jantar =         $_POST['jantar'];
 $data_jantar =     $_POST['data_jantar'];
 $animais =         $_POST['animais'];
 $atividades =         $_POST['atividades'];
 $transporte =         $_POST['transporte'];
 $pedido_especial =     $_POST['pedido_especial'];

// insere os dados na base de dados
$result = mysql_query("INSERT INTO suites (
nome,
telefone,
email,
suite,
tipo_reserva,
checkin,
checkout,
late_checkout,
pagamento,
hora_chegada,
camas_extra,
berco, pequeno_almoco,
jantar, data_jantar,
animais, atividades,
transporte,
pedido_especial

) VALUES (

'$nome',
'$telefone',
'$email',
'$suite',
'$tipo_reserva',
'$checkin',
'$checkout',
'$late_checkout',
'$pagamento',
'$hora_chegada',
'$camas_extra',
'$berco',
'$pequeno_almoco',
'$jantar',
'$data_jantar',
'$animais',
'$atividades',
'$transporte',
'$pedido_especial'
") or die(mysql_error());
  if ($result) //se os dados foram correctamente inseridos, mostra mensagem de sucesso
  {
	// após gravar mostra a mensagem de sucesso ou erro
	echo "<br><div style='width:440px; margin-left:auto; margin-right:auto; padding:4px; border:2px solid red; color:red;'><h3><p align='center'><font color='red'>Reserva adicionada com sucesso!</font></p></h3></div>";
  }
  else //caso contrário, mostra erro.
  {
	echo "<br><div style='width:440px; margin-left:auto; margin-right:auto; padding:4px; border:2px solid red; color:red;'><h3><p align='center'><font color='red'>ERRO: Não foi possível adicionar a reserva!</font></p></h3></div>";
  }
}
?>

Alterei o nome da variável de $sql para $result porque penso que é mais directo para quem lê perceber rapidamente o que está a ser feito.

Link para o comentário
Compartilhar em outros sites

  • 0

ok, fizeste bem, já não aparece logo a mensagem de erro no inicio, mas mesmo assim continua sem enviar, ao clicar em enviar aparece: Notice: Undefined index: id in /.../adicionar.php on line 21
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 42

 

já resolvi a cena do checkin etc... era so retirar o php la dentro que já não fazia sentido aqui.

Editado por joanita
Link para o comentário
Compartilhar em outros sites

  • 0

Experimenta comentar a linha onde fazes o INSERT na BD e logo abaixo faz um echo da instrução. De seguida, faz submit do formulário e verifica se não há nenhum valor vazio em algum campo que não permita valores nulos.

Finalmente, experimenta executar a instrução resultante do echo directamente no MySQL (se tiveres acesso a tal).

Editado por wootzor
Link para o comentário
Compartilhar em outros sites

  • 0

tou a toa... não sei fazer nada disso

o unico erro que tou a obter agora é: Notice: Undefined index: id in /.../adicionar.php on line 20
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 40

e com isso claro... não envia coisa alguma pro bd

Editado por joanita
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...