Jump to content

PHP


SofiaR
 Share

Recommended Posts

Olá pessoal!

Estou a fazer uma BD via browser, mas inda sou novata nestas coisas.  Tenho a seguinte tabela já programada para k ao registar dados através do formulário em HTML este depois guarde os dados directamente na BD. Mas o k realmente pretendo é o seguinte: Solicitar dados e após submissão dos mesmos mostrá-los ao utilizador para confirmação  e após a mesma então inserir na BD.

Será k alguém me pode dar uma dica como é que isto se faz?

Obrigada  😉

Link to comment
Share on other sites

Posso te ajudar, mas primeiro será interessante mostrares a tua tabela e já agora o teu formulário, para te poder dar um exemplo que va de encontro ao teu exemplo.

Penso que a primeira coisa que tens a fazer é criares uma ligação á tua bd a partir do php, aqui vai um primeiro exemplo:

<?php

$hostname_conn_login = "localhost";
$database_conn_login = "NOME_DA_BASE DE DADOS";
$username_conn_login = "root";
$password_conn_login = "";
$conn_login = mysql_pconnect($hostname_conn_login, $username_conn_login, $password_conn_login) or trigger_error(mysql_error(),E_USER_ERROR); 
?>
Link to comment
Share on other sites

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die                      ('Error connecting to mysql');
$dbname = 'sgbd080916';
mysql_select_db($dbname);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>SGBD080916</title>
</head>
<body>
<?php
//Busca as variaveis utilizando o array associative $_POST
$name_sci = $_POST['name_sci'];
$name_local=$_POST['name_local'];
$name_en=$_POST['name_en'];
$description=$_POST['description'];
$geo_distr=$_POST['geo_distr'];

//Efectua o query
mysql_query("INSERT INTO plant(name_sci, name_local,name_en,description,geo_distr) VALUES ('$name_sci', '$name_local', '$name_en', '$description', '$geo_distr');");
if(!mysql_query) {
die ("Erro ao inserir na base de dados!");
}

mysql_close($conn);?>

<h3>The information was introduced successfully!</h3>

</body>
</html>

Ficheiro HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title>Formulario Plant</title></head>
<body>
<form action="plant.php" method="POST">
Scientific name: <input type="text" name="name_sci"/><br>
Local: <input type="text" name="name_local"/><br>
English name: <input type="text" name="name_en"/><br>
Description: <input type="text" name="description"/><br>
Geographic distribution: <input type="text" name="geo_distr"/><br>
<input type="submit" value="Save"/>
</form>
</body>

Gracias 
</html>
Link to comment
Share on other sites

Precisas de 3 páginas:

1) formulário

2) validação

3) actualização

O teu problema é como passar os dados do formulário para a validação e da validação para a actualização.

formulário para validação

Os dados passam no $_POST.

No script de validação metes os dados numa variável de sessão e apresentas o formulário de validação.

validação para actualização

Se os dados foram validados, estão na variável de sessão. Actualiza a base de dados com eles.

<!-- formulario -->
<form ...>
  <input ...>
</form>

/* validação */
session_start();
$_SESSION['dados'] = $_POST;
print_r($_POST);
echo '<form method="post"><input type="submit" name="valida" value="Sim">';
echo '<input type="submit" name="valida" value="Não"></form>';

/* actualização */
session_start();
if ($_POST['valida'] == 'Sim') {
  $sql = "insert ... $_SESSION['dados']";
}

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.