pemoamsi 0 Denunciar post Postado Julho 28, 2011 Adiciono um dado após todos os _POST: include ("autentication.php"); $sqlinsert = "INSERT INTO dados( nome, morada, telefone, email) VALUES ('" . $nome. "','" . $morada. "','" . $telefone. "','" . $email. "'); mysql_query($sqlinsert) or die(mysql_error()); E agora como retiro desta inserção o id do dado que inseri? $_SESSION['id'] = '???????????????????????????'; Compartilhar este post Link para o post Compartilhar em outros sites
Adson aquino 2 Denunciar post Postado Julho 29, 2011 Essa função do mysql faz isso mysql_insert_id(); Compartilhar este post Link para o post Compartilhar em outros sites
pemoamsi 0 Denunciar post Postado Julho 29, 2011 Essa função do mysql faz isso mysql_insert_id(); Coloquei o seguinte: na primeira pagina: $id = mysql_insert_id(); $_SESSION['id'] = $id; E na outra ficou o seguinte: $id = $_SESSION['id']; Mas não funcionou... porquê? Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Julho 29, 2011 Você tem problema de aspas no seu código .. Compartilhar este post Link para o post Compartilhar em outros sites
Adson aquino 2 Denunciar post Postado Julho 29, 2011 você viu se está inserindo o registro e se ele está retornando o id inserido? Compartilhar este post Link para o post Compartilhar em outros sites
pemoamsi 0 Denunciar post Postado Julho 29, 2011 Você tem problema de aspas no seu código .. Que aspas? você viu se está inserindo o registro e se ele está retornando o id inserido? Não, fica vazio mesmo... nem se colocar: $_SESSION['id'] = '1'; Compartilhar este post Link para o post Compartilhar em outros sites
goruks 0 Denunciar post Postado Julho 29, 2011 include ("autentication.php"); $sqlinsert = "INSERT INTO dados( nome, morada, telefone, email) VALUES ('".$nome."','".$morada."','".$telefone."','".$email."')"; mysql_query($sqlinsert) or die(mysql_error()); $id = ; $_SESSION['id'] = mysql_insert_id(); Compartilhar este post Link para o post Compartilhar em outros sites
pemoamsi 0 Denunciar post Postado Julho 29, 2011 include ("autentication.php"); $sqlinsert = "INSERT INTO dados( nome, morada, telefone, email) VALUES ('".$nome."','".$morada."','".$telefone."','".$email."')"; mysql_query($sqlinsert) or die(mysql_error()); $id = ; $_SESSION['id'] = mysql_insert_id(); removi o $id = ; que dá erro e só coloquei mais o: $id = $_SESSION['id']; na página seguinte e não imprime nada no id.... Compartilhar este post Link para o post Compartilhar em outros sites
Adson aquino 2 Denunciar post Postado Julho 29, 2011 Na primeira linha do seu código você colocou session_start(); ? Compartilhar este post Link para o post Compartilhar em outros sites
pemoamsi 0 Denunciar post Postado Julho 29, 2011 Na primeira linha do seu código você colocou session_start(); ? Não me estavam a aparecer os Warnings, agora que falou nisso :( Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /homez.337/localhost/www/index.php:16) in /homez.337/localhost/www/index.php on line 16 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /homez.337/localhost/www/index.php:16) in /homez.337/localhost/www/index.php on line 16 Como faço para saber o que me está a bloquear o header? <?php session_start(); ?> <!DOCTYPE html PUBLIC> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link href="style.css" rel="stylesheet" type="text/css" /> <title>Formulário</title> </head> <body> <fieldset> <div align="center"> <h1><legend>Formulário</legend></h1> <div id="stylized" class="myform"> <?php $do = $_GET['do']; if(isset($do)){ switch ($do) { default: case "": include_once ("login.php"); break; case "login": include_once ("login.php"); break; case "campos": include_once ("campos.php"); break; else { include_once ("login.php"); } ?> </div> </div> </fieldset> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
Adson aquino 2 Denunciar post Postado Julho 29, 2011 O session_start tem que ficar na primeira linha do código antes de tudo é por isso que esta dando esse erro. Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Julho 29, 2011 Coloca assim na primeira linha: <?php ob_start(); session_start(); Compartilhar este post Link para o post Compartilhar em outros sites
pemoamsi 0 Denunciar post Postado Julho 29, 2011 O session_start tem que ficar na primeira linha do código antes de tudo é por isso que esta dando esse erro. Está mesmo no inicio do documento, antes de doctype mesmo.... não tem mais nada antes... :( Coloca assim na primeira linha: <?php ob_start(); session_start(); Coloquei e não deu :( Compartilhar este post Link para o post Compartilhar em outros sites
Adson aquino 2 Denunciar post Postado Julho 29, 2011 Mais pq você colocou o session_start nessa página e não naquela onde cria a session? Compartilhar este post Link para o post Compartilhar em outros sites