Formulário.php

PHP

28/10/2017

[url:descricao=Todo os arquivos do projeto final dessa "aula"]https://1drv.ms/f/s!AruvAcIPW3XYjv0HWVkct2G5Jhfubw[/url]


Este formulário abaixo , abre normalmente no endereço : file:///C:/xampp/htdocs/UseCabeca/ch02/final/aliens/report.html
Porém não vou conseguir enviar os dados , nele inseridos, como faço para ele abrir , no navegador com o endereço do LOCALHOST, ou seja nesse endereço : localhost/UseCabeca/ch02/final/aliens/report.html
 Eis o formulário : <!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" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Aliens Abducted Me - Report an Abduction</title>
</head>
<body>
<h2>Aliens Abducted Me - Report an Abduction</h2>

<?php
$first_name = $_POST['firstname'];
$last_name = $_POST['lastname'];
$when_it_happened = $_POST['whenithappened'];
$how_long = $_POST['howlong'];
$how_many = $_POST['howmany'];
$alien_description = $_POST['aliendescription'];
$what_they_did = $_POST['whattheydid'];
$fang_spotted = $_POST['fangspotted'];
$email = $_POST['email'];
$other = $_POST['other'];

$dbc = mysqli_connect('data.aliensabductedme.com', 'owen', 'aliensrool', 'aliendatabase')
or die('Error connecting to MySQL server.');

$query = "INSERT INTO aliens_abduction (first_name, last_name, when_it_happened, how_long, " .
"how_many, alien_description, what_they_did, fang_spotted, other, email) " .
"VALUES ('$first_name', '$last_name', '$when_it_happened', '$how_long', '$how_many', " .
"'$alien_description', '$what_they_did', '$fang_spotted', '$other', '$email')";

$result = mysqli_query($dbc, $query)
or die('Error querying database.');

mysqli_close($dbc);

echo 'Thanks for submitting the form.<br />';
echo 'You were abducted ' . $when_it_happened;
echo ' and were gone for ' . $how_long . '<br />';
echo 'Number of aliens: ' . $how_many . '<br />';
echo 'Describe them: ' . $alien_description . '<br />';
echo 'The aliens did this: ' . $what_they_did . '<br />';
echo 'Was Fang there? ' . $fang_spotted . '<br />';
echo 'Other comments: ' . $other . '<br />';
echo 'Your email address is ' . $email;
?>

</body>
</html>

Bom dia @Matt Pratta

Seu servidor apache precisa estar ligado para vc conseguir acessar com o endereço localhost
Outra coisa, se vc esta usando a TAG PHP na sua página, ela precisa ter a terminação php.
Exemplo: report.php
No xampp a pasta padrão é essa mesma, htdocs
[07:51, 10/28/2017] +55 21 98164-9907: Caso vc queira alterar de uma olhada nesse artigo, é antigo mas explica bem
[07:51, 10/28/2017] +55 21 98164-9907: http://www.mauricioprogramador.com.br/posts/alterar-pasta-padrao-do-xampp
[07:54, 10/28/2017] +55 24 99811-1255: Vou fazer isso , porém é estranho , pois trata-se de "projetofinal" e está parecendo erro do tipo : Notice: Undefined index: firstname in C:\\xampp\\htdocs\\UseCabeca\\ch02\\final\\aliens\\report.php on line 12
[07:56, 10/28/2017] +55 24 99811-1255: Mas já é um "luz brilhante" , no final do túnel , vou dar mais uma estudada.....nessas sua sugestão , AGRADECIDO.......
[08:00, 10/28/2017] +55 21 98164-9907: Bom, pelo q vi no seu código, essa página não é um formulário
[08:00, 10/28/2017] +55 21 98164-9907: Ela recebe dados de um formulário
[08:01, 10/28/2017] +55 21 98164-9907: Então se vc usar o formulário antes, qdo for direcionado pra essa página o erro não vai aparecer
[08:01, 10/28/2017] +55 21 98164-9907: Esse erro é comum qdo não definimos uma variável post, e ela fica rodando mesmo quando vc não tá postando nada.
[08:03, 10/28/2017] +55 21 98164-9907: Vc pode usar um - If
By using

$_SERVER['REQUEST_METHOD']

Example

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
[08:03, 10/28/2017] +55 24 99811-1255: É uma página de formulário , ou seja é um código de um formulário segundo o livro "Use a cabeça PHP & MYsql , ou seja , uma lição para iniciante , .
[08:03, 10/28/2017] +55 21 98164-9907: Pra definir q as variáveis post soh serão usadas qdo for feita postagem
[08:06, 10/28/2017] +55 24 99811-1255: Ai , fica esquisito por enquanto pra mim, Emerson Dias, pois sou iniciante ainda....estou no B..A..B..Á ainda...mas vou seguir sua sugestão....
[08:07, 10/28/2017] +55 21 98164-9907: Entendo
[08:08, 10/28/2017] +55 24 99811-1255: Estou na luta do aprendizado....INICIANTE.....
[08:10, 10/28/2017] +55 24 99811-1255: Conforme o livro , diante dessas suas explicações e se tratando de um projeto , final era pra esse "formulário", funcionar...a versão do PHP é 5.6 , tem alguma coisa a ver ?
[08:14, 10/28/2017] +55 21 98164-9907: Essa versão do PHP funciona normalmente pra esse seu projeto
[08:15, 10/28/2017] +55 21 98164-9907: Vc tem uma outra página onde vc envia os dados, não tem?
[08:15, 10/28/2017] +55 24 99811-1255: Beleza
[08:15, 10/28/2017] +55 21 98164-9907: Essa página q vc mostrou aqui no grupo, recebe os dados do formulário.
[08:16, 10/28/2017] +55 21 98164-9907: Deveria haver outra q faz a postagem dos dados
[08:16, 10/28/2017] +55 21 98164-9907: Use a outra antes dessa, e deve funcionar tudo blz
[08:18, 10/28/2017] +55 24 99811-1255: Vou ver isso , pois trata-s de passo a passo do livro..PHP use a CABEÇA ....não me foquei nesse detalhe ,
[08:22, 10/28/2017] +55 24 99811-1255: Mas como se trata de um livro , não entendi , porque ele começa assim, pois vejo que na past final, dessa aula , só tem esse arquivo chamado report.html e um outro chamado report.php além do style e da imagem..e nada mais....por isso é que não esou entendo então....pra onde vai esses dados....
[08:23, 10/28/2017] +55 24 99811-1255: E nem porque ele começa assim , pois de acordo com a sua explicação.....realmente os dados serão enviados pra onde ?
[08:24, 10/28/2017] +55 24 99811-1255: Ou seja esse código ele abre um formulário , onde eu preencho os dados que serão enviados por e-mail......
[08:25, 10/28/2017] +55 24 99811-1255: Pelo menos é oque acontece quando clico em reportar ele abre o OUTLOOK
[08:36, 10/28/2017] +55 24 99811-1255: Por aqui você consegue ver na nuvem : https://1drv.ms/u/s!AruvAcIPW3XYjv0LgRabN27Yn6Wgpw
[08:38, 10/28/2017] +55 24 99811-1255: E por aqui a pasta toda >>>> https://1drv.ms/f/s!AruvAcIPW3XYjv0HWVkct2G5Jhfubw
Antonio Gomes

Antonio Gomes

Curtidas 0

Melhor post

Alex William

Alex William

31/10/2017

Edite seu php.ini do apache, onde diz:

error_reporing=E_ALL & ~E_NOTICE


Troque por:

error_reporing=E_ALL & E_NOTICE & E_WARNING & E_DEPRECATED


E os erros só vão aparecer se você colocar a tag error_reporting(E_ALL) na pagina.
GOSTEI 1

Mais Respostas

Alex William

Alex William

28/10/2017

Outra dica, quando for postar códigos nas perguntas, use a tag de código. Assim fica mais legivel.

Obrigado
GOSTEI 0
Antonio Gomes

Antonio Gomes

28/10/2017

Mas veja bem , eu não desejo esconder os erros se os mesmos existirem , eu quero é eliminar os mesmos.......
GOSTEI 0
Alex William

Alex William

28/10/2017

Erros Notice acontecem quando você não declara o tipo da variavel, se você quer ter o trabalho de declarar todas as variáveis que vai usar na pagina(o que não é necessário no PHP), aconselho fazer o que eu disse.

Mas ja que você disse que não quer esconder os erros, procure por declaração de variáveis.

Toda vez que criar variaveis, vai ter que declará-las para o erro "Notice" não ocorrer.

<?php
var $variavel;

public string $texto;

public int $inteiro;
?>


E assim por diante.

Quando um erro "Deprecated" aparece, significa que a função está ultrapassada, ou seja, você utilizou uma função do PHP, na qual existe uma outra função mais atual que faz a mesma coisa.

Unico erro que vai travar sua pagina, são erros "Warning".

Esses erros geralmente ocorrem quando tem erro de sintaxe ou função que não existe mais na versão do PHP.

Espero que tenha ajudado. :D
GOSTEI 0
Alex William

Alex William

28/10/2017

Erros Notice acontecem quando você não declara o tipo da variavel, se você quer ter o trabalho de declarar todas as variáveis que vai usar na pagina(o que não é necessário no PHP), aconselho fazer o que eu disse.

Mas ja que você disse que não quer esconder os erros, procure por declaração de variáveis.

Toda vez que criar variaveis, vai ter que declará-las para o erro "Notice" não ocorrer.

<?php
var $variavel;

public string $texto;

public int $inteiro;
?>


E assim por diante.

Quando um erro "Deprecated" aparece, significa que a função está ultrapassada, ou seja, você utilizou uma função do PHP, na qual existe uma outra função mais atual que faz a mesma coisa.

Unico erro que vai travar sua pagina, são erros "Warning".

Esses erros geralmente ocorrem quando tem erro de sintaxe ou função que não existe mais na versão do PHP.

Espero que tenha ajudado. :D


Corrigindo: Se você NÃO quer ter o trabalho de declarar as variaveis, faça como eu disse sobre o php.ini

;D
GOSTEI 0
Antonio Gomes

Antonio Gomes

28/10/2017

COMO FAÇO PARA ENCERRAR ESSE TÓPICO ?
GOSTEI 0
POSTAR