Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

GetSQLValueString

06-10-2016 20:50

Boa noite!

Ao enviar o formulário recebo esta mensagem:

Notice: Undefined index: em_data in C:\xampp\htdocs\siscctur\modules\crm\teste_emp.php on line 56

A linha referente é

linha
56 - GetSQLValueString($_POST['em_data'], "date"),

Na tabela a coluna em_data está assim:

`em_data` datetime DEFAULT NULL,

alguma relação do erro com a tabela?
e no formulário está assim:

<td><input name="em_data" type="text" id="em_data" size="22" value="<?php setlocale(LC_TIME,"portuguese"); date_default_timezone_set( 'America/Sao_Paulo' ); $data_completa = strftime("%d-%b-%Y %H:%M"); echo $data_completa; ?>" disabled/></td>



Alguém pode me ajudar a resolver este problema?

Obrigado
kako
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

06-10-2016 21:19

Tem como postar o código completo de onde está usando o GetSQLValueString?
0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

Re: GetSQLValueString

06-10-2016 22:09

é um pouquinho grande por isto não postei, mas segue abaixo:
<?php require_once('../../Connections/siscctur.php'); ?> <?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO empresas (em_nome_fantasia, em_razao_social, cep, rua, rua_comp, num, bairro, cidade, uf, em_tel1, em_tel2, em_email, em_skype, em_site, em_status, em_data, em_te_id) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", GetSQLValueString($_POST['em_nome_fantasia'], "text"), GetSQLValueString($_POST['em_razao_social'], "text"), GetSQLValueString($_POST['cep'], "text"), GetSQLValueString($_POST['rua'], "text"), GetSQLValueString($_POST['rua_comp'], "text"), GetSQLValueString($_POST['num'], "text"), GetSQLValueString($_POST['bairro'], "text"), GetSQLValueString($_POST['cidade'], "text"), GetSQLValueString($_POST['uf'], "text"), GetSQLValueString($_POST['em_tel1'], "text"), GetSQLValueString($_POST['em_tel2'], "text"), GetSQLValueString($_POST['em_email'], "text"), GetSQLValueString($_POST['em_skype'], "text"), GetSQLValueString($_POST['em_site'], "text"), GetSQLValueString($_POST['em_status'], "int"), GetSQLValueString($_POST['em_data'], "date"), GetSQLValueString($_POST['em_te_id'], "int")); mysql_select_db($database_siscctur, $siscctur); $Result1 = mysql_query($insertSQL, $siscctur) or die(mysql_error()); } mysql_select_db($database_siscctur, $siscctur); $query_Recordset1 = "SELECT * FROM tipo_empresa"; $Recordset1 = mysql_query($query_Recordset1, $siscctur) or die(mysql_error()); $row_Recordset1 = mysql_fetch_assoc($Recordset1); $totalRows_Recordset1 = mysql_num_rows($Recordset1); ?> <!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"><!-- InstanceBegin template="/Templates/index.dwt.php" codeOutsideHTMLIsLocked="false" --> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- InstanceBeginEditable name="doctitle" --> <title>SisCCTur - Cadastro de Empresas</title> <script src="../../SpryAssets/SpryTabbedPanels.js" type="text/javascript"></script> <link href="../../SpryAssets/tabs.css" rel="stylesheet" type="text/css" /> <script src="http://code.jquery.com/jquery-1.7.1.min.js" type="text/javascript"></script> <script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false"></script> <script src="../../include/js/gmaps.js" type="text/javascript"></script> <script src="../../include/js/cep.js" type="text/javascript"></script> <link href="css/crm.css" rel="stylesheet" type="text/css" /> <script> $(function(){ wscep({map: 'map1',auto:true}); }) </script> <!-- InstanceEndEditable --> <link href="../../css/template.css" rel="stylesheet" type="text/css" /> <link href="../../css/style.css" rel="stylesheet" type="text/css" /> </head> <body> <table width="95%" border="0" align="center" bgcolor="#600600"> <tr> <td><table width="100%" border="0" align="center" bgcolor="#f0f0f0"> <tr> <td bgcolor="#fff" width="28%" height="100" rowspan="2"><img src="../../images/logo_01.png" width="266" height="100"></td> <td class="top_bar" width="45%" height="30px">Sistema ERP SisCCTur</td> <td class="top_bar" width="7%">Ajuda</td> <td class="top_bar" width="35%" bgcolor="#fffce0">Painel Administrativo</td> </tr> <tr> <td bgcolor="#fffce0"><!-- InstanceBeginEditable name="Modulo" -->Modulo<!-- InstanceEndEditable --></td> <td bgcolor="#fffce0" align="center"><img src="../../images/ajuda.png" width="50" height="50" /></td> <td bgcolor="#fffce0">&nbsp;</td> </tr> <tr> <td bgcolor="#D0E2F0" colspan="4"><!-- InstanceBeginEditable name="Menu" -->Menu<!-- InstanceEndEditable --></td> </tr> <tr><td>&nbsp;</td></tr> <tr> <td colspan="4"> <table border="0"> <tr style="width:100px"> <td><!-- InstanceBeginEditable name="Icone" --> <div class="titulo_princ"> <img class="icone" src="imagem/empresas.png" border="0"> <div class="texto">Cadastro de Empresas </div> </div><!-- InstanceEndEditable --> </td> </tr> </table> </td> </tr> <tr> <td colspan="4"><!-- InstanceBeginEditable name="Conteudo" --> <table width="1120px" border="0" align="center"> <tr> <td height="152"> <!-- Tabs --> <div id="TabbedPanels1" class="TabbedPanels"> <ul class="TabbedPanelsTabGroup"> <li class="TabbedPanelsTab" tabindex="0">Dados</li> <li class="TabbedPanelsTab" tabindex="0">Financeiro</li> <li class="TabbedPanelsTab" tabindex="0">Produtos</li> </ul> <div class="TabbedPanelsContentGroup"> <!-- Tabs 1 --> <div class="TabbedPanelsContent"> <form id="form1" name="form1" method="POST" action="<?php echo $editFormAction; ?>"> <p>&nbsp;</p> <table border="0"> <tr> <td width="550px"> <table class="crm_registros" width="100%" border="0" cellspacing="4"> <tr> <td class="label"><label>Empresa:</label></td> <td colspan="3"><input name="em_nome_fantasia" type="text" id="em_nome_fantasia" size="75" /></td> </tr> <tr> <td class="label"><label>Razão Social:</label></td> <td colspan="3"><input name="em_razao_social" type="text" id="em_razao_social" size="75" /></td> </tr> <tr> <td class="label"><label>Telefone:</label></td> <td><input name="em_tel1" type="text" id="em_tel1" size="26" /></td> <td class="label"><label>Telefone:</label></td> <td><input name="em_tel2" type="text" id="em_tel2" size="26" /></td> </tr> <tr> <td class="label"><label>Skype:</label></td> <td colspan="3"><input name="em_skype" type="text" id="em_skype" size="75" /></td> </tr> <tr> <td class="label"><label>Email:</label></td> <td colspan="3"><input name="em_email" type="text" id="em_email" size="75" /></td> </tr> <tr> <td class="label"><label>Site:</label></td> <td colspan="3"><input name="em_site" type="text" id="em_site" size="75" /></td> </tr> </table></td> <td> <table class="crm_registros" border="0" cellspacing="4" width="96%"> <tr> <td width="108" class="label"><label>Tipo de Empresa:</label></td> <td width="179"> <select name="em_te_id" id="em_te_id"> <?php do { ?> <option value="<?php echo $row_Recordset1['te_id']?>"><?php echo $row_Recordset1['te_tipo']?></option> <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); $rows = mysql_num_rows($Recordset1); if($rows > 0) { mysql_data_seek($Recordset1, 0); $row_Recordset1 = mysql_fetch_assoc($Recordset1); } ?> </select> </td> <td width="69" class="labelmenor"><label>Status:</label></td> <td width="191"><select name="em_status" id="em_status"> <option value="0">Ativo</option> <option value="1">Inativo</option> </select></td> </tr> <tr> <td class="label"><label>CEP:</label></td> <td colspan="4"><input id="cep" name="cep" type="text" maxlength="9" placeholder="Informe o CEP" /></td> </tr> <tr> <td class="label"><label>Endereço:</label></td> <td colspan="4"><input name="rua" type="text" class="input" id="rua" size="75" /></td> </tr> <tr> <td class="label"><label>Endereço Comp.</label></td> <td><input name="rua_comp" type="text" class="input" id="rua_comp" size="30" /></td> <td class="labelmenor"><label>Nº</label></td> <td><input name="num" type="text" id="num" size="10" /></td> </tr> <tr> <td class="label"><label>Bairro:</label></td> <td><input name="bairro" type="text" id="bairro" size="30" /></td> <td class="labelmenor"><label>Cidade:</label></td> <td><input name="cidade" type="text" id="cidade" size="22" /></td> </tr> <tr> <td class="label"><label>UF:</label></td> <td><input name="uf" type="text" id="uf" size="25" /></td> <td class="label"><label>Cadastrado em:</label></td> <td><input name="em_data" type="text" id="em_data" size="22" value="<?php setlocale(LC_TIME,"portuguese"); date_default_timezone_set( 'America/Sao_Paulo' ); $data_completa = strftime("%d-%b-%Y %H:%M"); echo $data_completa; ?>" disabled/></td> </tr> </table> </td> </tr> <tr> <td>&nbsp;</td> </tr> <tr> <td>&nbsp;</td> </tr> </table> <p align="center"> <input type="submit" name="button" id="button" value="Enviar" /> </p> <input type="hidden" name="MM_insert" value="form1" /> </form> <p class="paragrafo"> <p> <p class="paragrafo">&nbsp;</p> </div> <!-- Tabs 2 --> <div class="TabbedPanelsContent"> <p class="paragrafo">Conteúdo 3</p> <p class="paragrafo">&nbsp;</p> </div> <!-- Tabs 3 --> <div class="TabbedPanelsContent"> <p class="paragrafo">Conteúdo 3</p> <p class="paragrafo">&nbsp;</p> </div> </div> </div> </td> </tr> </table> <script type="text/javascript"> var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1"); </script><!-- InstanceEndEditable --> </td> </tr> <tr> <td colspan="4" bgcolor="#D0E2F0"> <div align="center">&copy; </div> </td> </tr> </table></td> </tr> </table> </body> <!-- InstanceEnd --></html> <?php mysql_free_result($Recordset1); ?>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

07-10-2016 07:58

Eu acho que é o formato da data que você está passando pelo input em_data.

Faz o seguinte teste substituindo o seu input de data por esse abaixo:

<input name="em_data" type="text" id="em_data" size="22" value="2016-10-07 07:56"/>

0
A melhor hospedagem para o seu site HostGator!
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

07-10-2016 09:56

Outra problema é o disabled. Isso faz com que o valor do campo seja anulado no envio.

Substitui pelo readonly.

<input name="em_data" type="text" id="em_data" size="22" value="<?php setlocale(LC_TIME,"portuguese"); date_default_timezone_set( 'America/Sao_Paulo' ); $data_completa = strftime("%d-%b-%Y %H:%M"); echo $data_completa; ?>" readonly/>

0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

Re: GetSQLValueString

07-10-2016 10:04

Usei o var_dump($_POST) antes de fazer a alteração sugerida e não apareceu em_data.

Depois fiz a alteração sugerida e funcionou. O problema é a transformação da data e horário brasileiro.

também usei readonly no lugar do disabled, a variavel aparece e grava na tabela, mas fica zerada mesmo com a data preenchida automaticamente.

Já tentei usar outras formatações de data, mas sem sucesso. Tens alguma sugestão?

Agradeço
kako
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

07-10-2016 10:15

Se é problema de exibição você pode usar o seguinte na query de exibição das datas:

SELECT DATE_FORMAT(em_data, '%d/%m/%Y %H:%i:%s') AS nova_data FROM empresas

Onde você usa nova_data dentro do while para obter a data reformatada.
0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

Re: GetSQLValueString

07-10-2016 10:24

uso assim?

sprintf("INSERT INTO empresas (em_nome_fantasia, em_razao_social, cep, rua, rua_comp, num, bairro, cidade, uf, em_tel1, em_tel2, em_email, em_skype, em_site, em_status, em_data, em_te_id) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, ('%d/%m/%Y %H:%i:%s'), %s)"

desculpe, sou novato em php

e retiro

<input name="em_data" type="text" id="em_data" size="22" value="<?php setlocale(LC_TIME,"portuguese"); date_default_timezone_set( 'America/Sao_Paulo' ); $data_completa = strftime("%d-%b-%Y %H:%M"); echo $data_completa; ?>"

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

07-10-2016 17:39

A parte da data no input tem que ser no formato datetime, ou seja:

<input name="em_data" type="text" id="em_data" size="22" value="<?php echo date("Y-m-d H:i:s"); ?>">

Isso é para que a data seja inserida no banco de dados no formato correto.

Já na hora de exibir no seu SELECT se deseja exibir a data no formato brasileiro tem que usar o DATE_FORMAT, como o exemplo abaixo

SELECT DATE_FORMAT(em_data, '%d/%m/%Y %H:%i:%s') AS nova_data FROM empresas

O seu INSERT não precisa alterar. Continua:

$insertSQL = sprintf("INSERT INTO empresas (em_nome_fantasia, em_razao_social, cep, rua, rua_comp, num, bairro, cidade, uf, em_tel1, em_tel2, em_email, em_skype, em_site, em_status, em_data, em_te_id) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", .. GetSQLValueString($_POST['em_data'], "date"),

0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

Re: GetSQLValueString

08-10-2016 18:34

Oi, web

Desculpe a minha falta de conhecimento em php, mas a linha de SELECT DATE_FORMAT, onde eu coloco no codigo acima indicado?

Me indique uma linha por favor, já tentei em diversos lugares sem sucesso.

Obrigado.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

08-10-2016 22:07

Vamos por parte. O INSERT já está funcionando correto? Ou seja, você reformulou o código para o formato: aaaa-mm-dd hh:mm:ss

O código que recomendei usar foi para quando você for exibir a data na página, ou seja, quando for listar os dados do banco de dados. No INSERT se já está inserindo os dados está feito. Não precisa mexer.
0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

Re: GetSQLValueString

08-10-2016 22:38

Se eu colocar o código sugerido:

<input name="em_data" type="text" id="em_data" size="22" value="<?php echo date("Y-m-d H:i:s"); ?>">

a string aparece assim: ["em_data"]=> string(19) "2016-10-09 03:31:31"

Grava na tabela normalmente em modo mysql ( datetime)

data e horário diferente no formulário do usuário, já que ele deve aparecer como valor default e disabled

como posso fazer para formatar data e horário para o Brasil?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Re: GetSQLValueString

09-10-2016 09:00

Para manter a data sem ser alterada pelo usuário usa o readonly.

<input name="em_data" type="text" id="em_data" size="22" value="<?php echo date("Y-m-d H:i:s"); ?>" readonly>

Já quanto ao formato da data, o datetime o formato é aquele mesmo, ou seja, você precisa que a data seja entrada naquele formato.

Você pode fazer o seguinte:

- Alterar o formato da coluna para varchar, para que aceite o formado desejado, exemplo: 09-out-2016 08:55

ou

- Mostrar para o usuário a data no formato acima, e inserir no banco de dados a data formatada correta, através do input hidden.

<!-- mostrado ao usuário //--> <input name="" type="text" id="em_data" size="22" value="<?php setlocale(LC_TIME,"portuguese"); date_default_timezone_set( 'America/Sao_Paulo' ); $data_completa = strftime("%d-%b-%Y %H:%M"); echo $data_completa; ?>" readonly>



<!-- campo enviado para o insert //--> <input name="em_data" type="hidden" id="em_data" size="22" value="<?php echo date("Y-m-d H:i:s"); ?>" readonly>

0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 7
Sexo: Masculino

Re: GetSQLValueString  #resolvido

10-10-2016 11:23

Muito obrigado pela ajuda. Realmente terei que usar o campo como varchar. É um campo somente de visualização do cadastro, sem frescuras.

Desculpe o pelo trabalhão.

kako
0

Quem está online

Usuários navegando neste fórum: Bing [Bot]