Jump to content


rangelviotti

Member Since 26/05/2007
Offline Last Active 13/09/2009, 19:36
-----

Topics I've Started

Insert Com While

18/02/2008, 09:53

Cavalheiros, bom dia. Antes de mais nada, eu já vasculhei em todo o forum só achei informações desencontradas a respeito do que eu preciso. Se alguém poder me ajudar eu ficaria eternamente grato.

Eis a questão:

eu tenho duas tabelas que, somente quando forem totalmente preenchidas, deverão ter seus registros repassados para uma terceira tabela:

vejam as estruturas:

1 - primeira tabela que enviara os seus resgistros;

CREATE TABLE `tab_1` (
`id` int(11) NOT NULL auto_increment,
`campo1` varchar(10) NOT NULL,
`campo2` varchar(10) NOT NULL,
`campo3` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
);

2 - segunda tabela que enviara os seus resgistros;

CREATE TABLE `tab_2` (
`id` int(11) NOT NULL auto_increment,
`campo1` varchar(10) NOT NULL,
`campo2` varchar(10) NOT NULL,
`campo3` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
);

1 - tabela que receberá os registros,

CREATE TABLE `recebe` (
`id` int(11) NOT NULL auto_increment,
`campo_1_tab_1` varchar(10) NOT NULL,
`campo_2_tab_1` varchar(10) NOT NULL,
`campo_3_tab_1` varchar(10) NOT NULL,
`campo_1_tab_2` varchar(10) NOT NULL,
`campo_2_tab_2` varchar(10) NOT NULL,
`campo_3_tab_2` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
);


Até onde eu vi, os comandos seriam estes:
<?
include "conecta"; //as funções de conexão com o BD e seleção de tabelas

$buscaTab1 = mysql_query("select * from tab_1 order by id",$conn);//recupera os resultados da primeira tebela e aí começam os problemas...
$contagem = mysql_num_rows ($buscaTab1); //conta o total

if ($contagem == 0)//se não houver resultados, retorna erro
{echo "não houve retorno de resultados";}
else
{
while ($linhas = mysql_fetch_row($buscaTab1)){ //estrutura de repetição para gravar dados

mysql_query("insert into recebe (campo_1_tab_1, campo_2_tab_1, campo_3_tab_1, campo_1_tab_2, campo_2_tab_2, campo_3_tab_2) values ('$linhas[1]', '$linhas[2]', '$linhas[1]')", $conn);//grava dados apenas da primeira
}}
?>


Pois bem, meu proble está divido em:

1 - Como incluir uma outra estrutura de repetição para a segunda tabela
2 - como não quadruplicar os dados
3 - como é que eu saio dessa?

Abraços a todos, Rangel Viotti

Validação

10/02/2008, 00:12

Campeões: Eu já estou entrando em choque por causa de uma coisa que deveria ser simples mas está me tirando do sério.

Antes de explicar o que é, deixe-me dizer o que já fiz.

Estou desde 08:15 da manhã de ontem - sábado (são quase 01:00 da manha de domingo) vasculhando todos os tutoriais, dicas, forums e pais-de-santo que me espliquem o seguinte:


COMO VALIDAR UMA OPTION LIST, OU MENU LIST, OU QUALQUER LIST com o validate.js. Aliás, nem precisa mais ser com o validade.js/prtotype.js.

Tudo que eu preciso é: se o cara não escolher nenhuma opção a janelinha apearece com a mensagem " você não selecionou, blá, blá, blá.

Eu já achei todo tipo de validação mas todas elas saõ só para textos, textareas, datas e VALIDAÇÕES DE ATÉ MAPA ASTRAL

Nas não vi ninguém validando menu de listas.

OBS: Refiro-me ao famoso <option></option>. Honestamente galera: já estou ficando meio desesperado.

Alghuém por aí me juda???? por favor????

Php Com Xajax

08/02/2008, 08:19

Brava gente Brasileira:

Estou com uma validação de um formulário repleto de options lists (<option></option>).

Tá tudo certinho e funfando legal. Mas eu só precisaria que a função limpasse o formulário depois de gravar os dados para não ter que enfiar um botão "Limpar dados" na página. (cá entre nós! fica feio pra xxxxxx, né?)

Alguém aí tem uma dica???

segue a validação completa..

<?
require_once('../xajax/xajax.inc.php');
$xajax = new xajax();
$xajax->registerFunction("enviarDados");
$xajax->processRequests();
function enviarDados($discip_pcl, $eixos_pcl_1, $eixos_pcl_2, $cnc_pcl_1, $cnc_pcl_2, $cnpsi_pcl_1, $cnpsi_pcl_2, $cnpro_pcl_1, $cnpro_pcl_2, $cnbac_pcl_1, $cnbac_pcl_2, $hnch_pcl_1, $hnch_pcl_2, $hpsi_pcl_1, $hpsi_pcl_2, $hpro_pcl_1, $hpro_pcl_2, $hbac_pcl_1, $hbac_pcl_2)
{

$objResponse = new xajaxResponse();


if(empty($discip_pcl))//1
{
$res = "<font color='#990000'>ATEN&Ccedil;&Atilde;O. Disciplina n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}

if(empty($eixos_pcl_1))//2
{
$res = "<font color='#FF0000'>ATEN&Ccedil;&Atilde;O. Eixos estruturantes n&atilde;o informado.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}

if(empty($eixos_pcl_2))//3
{
$res = "<font color='#FF0000'>ATEN&Ccedil;&Atilde;O. Eixos estruturantes n&atilde;o informado.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}

if(empty($cnc_pcl_1))//4
{
$res = "<font color='#000033'>ATEN&Ccedil;&Atilde;O. Compet. NC comum n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}

if(empty($cnc_pcl_2))//5
{
$res = "<font color='#000033'>ATEN&Ccedil;&Atilde;O. Compet. NC comum n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}


if(empty($cnpsi_pcl_1))//6
{
$res = "<font color='#FF6600'>ATEN&Ccedil;&Atilde;O. Compet. Psic&oacute;logo n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}

if(empty($cnpsi_pcl_2))//7
{
$res = "<font color='#FF6600'>ATEN&Ccedil;&Atilde;O. Compet. Psic&oacute;logo n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}


if(empty($cnpro_pcl_1))//8
{
$res = "<font color='#006600'>ATEN&Ccedil;&Atilde;O. Compet. Professor n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($cnpro_pcl_2))//9
{
$res = "<font color='#006600'>ATEN&Ccedil;&Atilde;O. Compet. Professor n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($cnbac_pcl_1))//10
{
$res = "<font color='#666600'>ATEN&Ccedil;&Atilde;O. Compet. Bacharel n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($cnbac_pcl_2))//11
{
$res = "<font color='#666600'>ATEN&Ccedil;&Atilde;O. Compet. Bacharel n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hnch_pcl_1))//12
{
$res = "<font color='#9900CC'>ATEN&Ccedil;&Atilde;O. Habilild. NC comum n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hnch_pcl_2))//13
{
$res = "<font color='#9900CC'>ATEN&Ccedil;&Atilde;O. Habilild. NC comum n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hpsi_pcl_1))//14
{
$res = "<font color='#0066CC'>ATEN&Ccedil;&Atilde;O. Habilid. Psic&oacute;logo n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hpsi_pcl_2))//15
{
$res = "<font color='#0066CC'>ATEN&Ccedil;&Atilde;O. Habilid. Psic&oacute;logo n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hpro_pcl_1))//16
{
$res = "<font color='#330000'>ATEN&Ccedil;&Atilde;O. Habilid. Professor n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hpro_pcl_2))//17
{
$res = "<font color='#330000'>ATEN&Ccedil;&Atilde;O. Habilid. Professor n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hbac_pcl_1))//18
{
$res = "<font color='#333366'>ATEN&Ccedil;&Atilde;O. Habilid. Bacharel n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
if(empty($hbac_pcl_2))//19
{
$res = "<font color='#333366'>ATEN&Ccedil;&Atilde;O. Habilid. Bacharel n&atilde;o informada.</font>";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}

else
{
include "conecta.php";
$grava_pcl = mysql_query ("INSERT INTO res_pcl (discip_pcl, eixos_pcl_1, eixos_pcl_2, cnc_pcl_1, cnc_pcl_2, cnpsi_pcl_1, cnpsi_pcl_2, cnpro_pcl_1, cnpro_pcl_2, cnbac_pcl_1, cnbac_pcl_2, hnch_pcl_1, hnch_pcl_2, hpsi_pcl_1, hpsi_pcl_2, hpro_pcl_1, hpro_pcl_2, hbac_pcl_1, hbac_pcl_2) VALUES ('$discip_pcl', '$eixos_pcl_1', '$eixos_pcl_2', '$cnc_pcl_1', '$cnc_pcl_2', '$cnpsi_pcl_1', '$cnpsi_pcl_2', '$cnpro_pcl_1', '$cnpro_pcl_2', '$cnbac_pcl_1', '$cnbac_pcl_2', '$hnch_pcl_1', '$hnch_pcl_2', '$hpsi_pcl_1', '$hpsi_pcl_2', '$hpro_pcl_1', '$hpro_pcl_2', '$hbac_pcl_1', '$hbac_pcl_2')",$conn);

$altera = mysql_query ("UPDATE pcl SET disp = '1' WHERE cod = '$discip_pcl'",$conn);

}
$verifica = @mysql_num_rows($grava_pcl);

if ($verifica == 0)

{

$res = "*DADOS GRAVADOS COM SUCESSO! CLIQUE EM &quot;Sair&quot; para encerrar ou em &quot;Limpar dados&quot; para REPETIR O PROCESSO.";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;
}
else
{

$res = "*ERRO NA GRAVA&Ccedil;&Atilde;O DE DADOS!";
$objResponse->addAssign('resultado', 'innerHTML', $res);
return $objResponse;

}

}?>

Acentuação E O Mysql

07/12/2007, 13:17

Rapaziada. Antes de mais nada é um prazer fazer parte de seu fórum. Por antecipação, obrigado pela atenção dispendida.

Meu problema (exaustivamente verificado) é o seguinte:

Eu tenho várias páginas em php que, entre outras coisas, as mais importantes são:

1 - inserir notícias em uma tabela;
2 - "echoar" essas mesmas notícias dessas tabelas e,
3 - editar as notícias dessas tabelas.

Como alguns já devem ter percebido, estou criando um CMS...

O meu problema é justamente nessas etapas, conseguir que tanto as notícias gravadas, editadas e/ou ecoadas sejam vistas como elas deveriam, e não como estão sendo tratadas pelo mysql.

Os eternos 'garranchos', as substituições de ç,á,é,í,ó,ú,ão, ãe, ões, ães e tudo mais, por caracteres indecifráveis e etc.

Antes que vocês me indiquem outros tuturiais eu preciso dizer que: EU JÁ PASSEI POR TODOS E NENHUM RESOLVEU.

Uma das coisas que que eu percebi nas explicações já vistas é de que praticamente todos são baseados no mysql versão 4.qualquer-coisa, que ainda usava o collation latin1 unicamente. Como o meu mysql - 5.0.24, o collation-base latin1 (não selecionável) tem várias outras opções. Bem como outras tantas que foram alteradas de uma versão para outra.

Isso sem falar na combinação entre o cabeçalho da página HTML e o conteúdo PHP....

portanto meus caros, alguém tem a solução o o caminho das pedras que dê em algum lugar????
Abraços a todos, Rangel

IPB Skin By Virteq