Jump to content


nandotrade's Content

There have been 13 items by nandotrade (Search limited from 29/03/2023)


Ordernar por                Order  

#847585 Adicionar O Mesmo Item No Carrinho Com Cor Diferente

Posted by nandotrade on 10/05/2007, 22:41 in PHP

Peguei um exemplo de carrinho para montar pedidos de uma representada.
No modelo que busquei cada item selecionado do banco de dados é montado num form com os campos necessários ao carrinho...
Inicialmente serviria perfeitamente para as características dos produtos, mas agora entrará um produto que terá a varíável COR.
Sendo assim, agora posso ter a seguinte situação:

CODIGO = 1
QTD = 2
DESCRICAO = BALDE
PREÇO = 10,00
IPI = 0,05
COR = BRANCO

CODIGO = 1
QTD = 10
DESCRICAO = BALDE
PREÇO = 8,00
IPI = 0,05
COR = VERDE

Só que no form, onde é informado o produto, foto, preço etc, a cor é um campo SELECT com diversas cores, para não ter de criar uma combinação de cores que pode vir a fazer adicionar 200 itens no banco de dados.

A necessidade é criar o carrinho com sessão, onde o cliente tem apenas o código do primeiro produto, depois seleciona a cor desejada, e manda pro carrinho. De lá do carrinho e clica em retornar para a lista de produtos, seleciona novamente o mesmo produto, informa a quantidade e a nova cor.

Ex.?:
<input type="hidden" name="txtprod[<? echo $indice;?>][CODIGO]" value="<? echo $prim_cod; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][QTD]" value="<? echo $prim_qtd; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][DESCRICAO]" value="<? echo $prim_desc; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][PRECO]" value="<? echo $prim_preco; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][IPI]" value="<? echo $prim_ipi; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][COR]" value="<? echo $prim_cor; ?>">
(OBS: este último campo é um select da cor OK.)

Ao clicar em submit, todos os produtos desta lista são enviados para o script carrinho:

//********* SCRIPT CARRINHO ***********************
include ("../config.php");
//INICIALIZA A SESSÃO
session_start();
//VERIFICA SE TEM PRODUTO NO CARRINHO PARA PUXAR
if(count($_SESSION[cesta]) > 0) {
//PEGA A CHAVE DO ARRAY
$chave = array_keys($_SESSION[cesta]);
//PEGA OS DADOS DA SESSÃO
for($i=0; $i<sizeof($chave); $i++) {
//ÍNDICE
$indice = $chave[$i];
//ATRIBUI
$cesta[$indice][CODIGO] = $_SESSION[cesta][$indice][CODIGO];
$cesta[$indice][IPI ] = $_SESSION[cesta][$indice][IPI];
$cesta[$indice][DESCRICAO]= $_SESSION[cesta][$indice][DESCRICAO];
$cesta[$indice][PRECO] = $_SESSION[cesta][$indice][PRECO];
$cesta[$indice][QTDE] = $_SESSION[cesta][$indice][QTDE];
$cesta[$indice][COR] = $_SESSION[cesta][$indice][COR];

}//FECHA FOR
}//FECHA IF
//VERIFICA SE A OPÇÃO ATUALIZAR FOI SELECIONADA
if($_POST[opc_atualizar]) {
$v_atualiza = $_POST[a_prod]; //RECEBE OS PRODUTOS CHECADOS PARA ATUALIZAÇÃO
$chave = array_keys($v_atualiza); //PEGA A CHAVE DO ARRAY
//EXIBE
for($i=0; $i<sizeof($chave); $i++) {
$indice = $chave[$i]; //PEGA O INDICE DO PRODUTO
$_SESSION[cesta][$indice][QTDE] = $v_atualiza[$indice][QTDE]; //ALTERA A QUANTIDADE DO PRODUTO SELECIONADO
}//FECHA FOR
}//FECHA IF

//VERIFICA SE A OPÇÃO EXCLUIR FOI SELECIONADA
elseif($_POST[opc_excluir]) {
$excluir = $_POST[check]; //RECEBE OS PRODUTOS CHECADOS PARA EXCLUSÃO
//EXIBE
for($i=0; $i<sizeof($excluir); $i++) {
$indice = $excluir[$i]; //PEGA O INDICE DO PRODUTO
unset($_SESSION[cesta][$indice]); //DESTRÓI A VARIÁVEL ESPECIFICADA
}//FECHA FOR
}//FECHA IF

//RECEBE O PEDIDO DO USUÁRIO
elseif($_POST[opc_efetivar]) {
$v_prod = $_POST[txtprod]; //RECEBE AS VARIÁVEIS
$chave = array_keys($v_prod); //PEGA A CHAVE DO ARRAY
//EXIBE
for($i=0; $i<sizeof($chave); $i++) {
$indice = $chave[$i];
if(!empty($v_prod[$indice][QTDE])) {
//GRAVA NO ARRAY CESTA
$cesta[$indice][CODIGO] = $v_prod[$indice][CODIGO];
$cesta[$indice][IPI] = $v_prod[$indice][IPI];
$cesta[$indice][DESCRICAO]= $v_prod[$indice][DESCRICAO];
$cesta[$indice][PRECO] = $v_prod[$indice][PRECO];
$cesta[$indice][QTDE] = $v_prod[$indice][QTDE];
$cesta[$indice][COR] = $v_prod[$indice][COR];
}//FECHA IF
}//FECHA FOR
//GRAVA NA SESSÃO
$_SESSION[cesta] = $cesta;
}//FECHA ELSE

Como faço para quando o usuário voltar na página de seleção de produtos, selecionar o mesmo (ÍNDICE) apenas mudando a quantidade e a cor do produto, e adicioná-lo na sessão com outra númeração maior de indice ou diferente das já utilizadas?



#837308 Exibindo Os Dados Do Select Em Colunas Com Form

Posted by nandotrade on 27/03/2007, 21:41 in PHP

Faço um select no MySQL, listos o resultado, mas a exibição é no FORM pois preciso alterar alguns valores em determinados nomes.
Como pegar somente as linhas alteradas e fazer o UPDATE dessas linhas na tabela do MYSQL.
Ex:
...
$query = "SELECT * FROM tabela1;";
...
<form name="formatoplanilha" method="POST">
<? do {
if ($numlinhas_resultado > 0) {
?>
<input type="text" name="item" value="<? echo $linha['item']; ?>">
<input type="text" name="valor" value="<? echo number_format($linha['pedprod_valor'],2,',','.'); ?>">
<? }
} while ($row_Tab_Tipo1 = mysql_fetch_assoc($resultado)); ?>
<input type="submit" name="Salvar">
</form>

Após o submit preciso pegar apenas as linhas alteradas e fazer o UPDATE.



#817818 Ler Linhas De Arquivo Txt

Posted by nandotrade on 18/01/2007, 16:59 in PHP

Tenho uma série de arquivos TXT que pretendo ler e gravar em banco de dados MySql.

O formato é mais ou menos este:

*11 "asadfasdf" "sdf" 123 "cidade" "asdfsadfasdf" ....
"76 "asdfasd asdf ads" "asdfds" 234 "adsf asdfa sdfasdf asdfas df" .....

Fiz o código abaixo, que abre o arquivo e faz uma primeira separação pelo *.
Em seguida lê a linha e faz a quebra pelas aspas, onde pegarei apenas os valore que devem ir para o banco. Só que o código só faz a quebra na primeira linha.

$handle = fopen ("repre.txt", "r");
$i2="0";
while (!feof ($handle)) {
$buffer = fgets($handle, 4096);
$mostra1 = explode("*",$buffer);
while($i2 < count($mostra1)){
list($campo1[$i2],$campo2[$i2],$campo3[$i2],$campo4[$i2],$campo5[$i2],$campo6[$i2],$campo7[$i2],$campo8[$i2],$campo9[$i2],$campo10[$i2],$campo11[$i2],$campo12[$i2],$campo13[$i2],$campo14[$i2],$campo15[$i2],$campo16[$i2])= explode("\"",$mostra1[$i2]);
$conteudo = "INSERT INTO (`rep_codrepr` , `rep_status` , `rep_nome` , `rep_endereco` , `rep_cidade` , `rep_telefone` , `rep_fax` , `rep_cgc` , `rep_contato` , `rep_insc_est` , `rep_obs` `rep_cep` ) VALUES ('";
$conteudo .= trim($campo1[$i2])."' , '";
$conteudo .= "1' , '";
$conteudo .= trim($campo2[$i2])."' , '";
$conteudo .= trim($campo4[$i2])."' , '";
$conteudo .= trim($campo5[$i2])."' , '";
$conteudo .= trim($campo6[$i2])."' , '";
$conteudo .= trim($campo8[$i2])."' , '";
$conteudo .= trim($campo10[$i2])."' , '";
$conteudo .= trim($campo12[$i2])."' , '";
$conteudo .= trim($campo14[$i2])."' , '";
$conteudo .= trim($campo16[$i2])."' )";
$conteudo .= "; \n";
$ix = fopen("repre_salvo.txt", "w");
fwrite($ix,$conteudo,4096);
fclose($ix);
$i2++;
} // FIM DO SEGUNDO WHILE
}
fclose ($handle);



#816878 Não Acessa O Mysql...

Posted by nandotrade on 17/01/2007, 08:24 in PHP

É o seguinte:

APACHE: funciona normal. Exibe páginas normalmente, incusive o php_info.

APACHE + o PHP: Funciona normal executando uma página. ENTRETANTO, se eu colocar nessa mesma página instruções de CONEXÃO ao banco MYSQL, a página exibida é uma página em branco, nem exibe o que exibia sem os comandos de acesso ao banco.

MYSQL: se eu abrir via console, tá lá legal... Se eu abrir via o dbtools, tá lá legal, se eu abrir via mysqlamin 2.54 tá lá legal, ou seja, os bancos stão lá, acesso com root, e com outros usuários que criei com níveis de permissão diferentes para os bancos existentes.

O ESTRANHO: Mesmo que eu coloque E_ERROR como ALL na página, ele não apresenta nenhuma mensagem de erro de acesso ou de conexão, e apresenta a tela do internet explorer em branco, sem nada, nem os códigos HTML.

Quanto ao uso da versão mais recente do MYSQL, não gotaria de testar, pois meu provedor ainda não usa a versão 5 dele, apenas atualizou a versão do PHP para a 5.

Alguma dica?????


Outra coisa...

Agora verificando o log do APACHE, tá dando essa mensagem:

PHP Warning: PHP Startup: Unable to load dynamic library 'c:/php5/ext/php_mysql.dll' - N\xe3o foi poss\xedvel encontrar o m\xf3dulo especificado.\r\n in Unknown on line 0

e ai depois quando executo um connect ele diss isso:

[Sun Jan 07 09:43:32 2007] [error] [client 127.0.0.1] PHP Fatal error: Call to undefined function mysql_connect() in F:\\html\\souza\\HTML2\\TMP14726bhxwj.php on line 12

Creio que o segundo erro deve acontecer em decorrência do primeiro.

Entretanto o arquivo se encontra lá na pasta ext.

Alguma dica.



#816652 Não Acessa O Mysql...

Posted by nandotrade on 16/01/2007, 15:58 in PHP

Fiz uma atualização em minha máquina, instalando o APACHE 2.2 o PHP 5.1.6, mas continuo usando o MYSQL 4.

O fato é que executo comandos do PHP, mas tudo aquilo que funcionava antes, acessando bancos de dados do MYSQL parou de funcionar, quando chamo qualquer coisa apenas abre uma janela em branco......

Alguma dica?



#768237 Redirecionamento

Posted by nandotrade on 01/08/2006, 15:48 in PHP

E ai,

Conseguiu colocar em destaque (primeiro da lista que nem vc falou) com essa do <meta name>. Se já testou e funcionou, me diz que eu vou tentar isso num site....

Grato.



#765633 Redirecionamento

Posted by nandotrade on 26/07/2006, 14:50 in PHP

Não sei se é isso que entendí.

Por exemplo:
Nos sites de busca, você pode dar destaque em resultados de consulta, fazendo seu produto ou serviço aparecer em primeiro lugar.

Isso os sites de busca fazem em função do pagamento do espaço que você adquiriu para obter preferência de exibição de seu produto em detrimento dos demais.

Sendo assim para aparecer no cade, no yahoo, no google, etc... em destaque, é só pagar que já vai ficar lá em primeiro.

Por outro lado, se vc vem desenvolvendo um site seu de produtos, e ao abrir seu site vc quer dar destaque a algum produto do teu site, basta vc prever na sua programação algo do tipo anunciantes tipo 1, tipo 2, tipo 3, etc, e na hora de apresentar os produtos de uma determinada categoria, fazer a ordenação por tipo.



#765618 Php.ini

Posted by nandotrade on 26/07/2006, 14:25 in PHP

Em meu php.ini se encontra conforme abaixo:



; Directory in which the loadable extensions (modules) reside.
extension_dir = "c:\php/ext\"



#760681 Interpretacao De Arquivos .inc

Posted by nandotrade on 13/07/2006, 15:42 in PHP

Vamos entender um pouco mais:

Lá no teu hoste onde a tua aplicação foi hospedada, vc tem o arquivo:

HOME.PHP e DADOS.INI

quando eu abro o teu host eu faria assim:

www.teuhost.com.br/home.php (é isso????

ao executar a página, usando o arquivo INC na forma que te passei, não será exibido o valor do arquivo inc, e nem o cara que fez o www........ saberá queexiste um inc, poi isso só roda la na porção server.

evidentemente que se você mandar os usuários digitarem no browser:

www.teuhost.com.br/dados.inc ai vc terá problermas mesmo.

É mais fácil vc postar o que vc tá fazendo (código ou caminho pra tuapágina) pra se tentar avaliar a questão tá.



#760654 Interpretacao De Arquivos .inc

Posted by nandotrade on 13/07/2006, 15:00 in PHP

Não sei se entendí corretamente ssua dúvida, mas a coisa é mais oumenos assim:

1 - Imagina que abaixo vc tem um conjunto de instruções de sua página, que apelidarei de HOME.PHP

...
<body>
<table>
<tr>
<td>Cola aqui o nome: <? echo $valor; ?> </td>
<td>Cola aqui o nome do SERVER: <? echo $server"; ?> </td>
</ttr>
</table>
</body>
...

2 - Agora imagina que vc tenha um arquivo.inc com os conteúdos de $server e $valor vamos chamá-lo de DADOS.INC (seu conteúdo deveria ser assim:

<?
$valor = "Juca Bala";
$server = "hostxxx.nomehoste.com.br";
?>

3 - Se você quiser incluir o este arquivo DADOS.IN para ele ser interpretado pelo programa HOME.PHP, seriaadicionar o que segue:

...
<? include("caminho/dados.inc"); ?>
<body>
<table>
<tr>
<td>Cola aqui o nome: <? echo $valor; ?> </td>
<td>Cola aqui o nome do SERVER: <? echo $server"; ?> </td>
</ttr>
</table>
</body>
...

Com isso seu script da home, irá adicionar antes da tag <body> os dois campos de dados.inc com os respectivos valores e será intrepretao pelo server no momento em que chegar as 2 tags TD.

Se não for isso, favor esplicar melhor qual é a sua dúvida.



#758357 Mostrar Erros

Posted by nandotrade on 07/07/2006, 16:17 in PHP

use a instrução

ini_set ( string varname, string newvalue)

o nome da variável que controla os erros é: error_reporting
e o novo valor deve ser: E_ALL & ~E_NOTICE

qualquer dúvida consulte o manual do PHP que vc acha todos os detalhes por lá.



#758346 Erro Simples

Posted by nandotrade on 07/07/2006, 15:59 in PHP

creio que seu erro fica localizado num JAVA SCRIPT na linha 482 onde você executa um
FUNCTIO verifica_sessao().

Dentro desse java vc abre um IF (do php) e deseja encerrá-lo fora do JAVA SCRIPT.

Ao menos eu colei o teu programa no software PHP DESIGNER e ele entende que a chave "{" aberta após o comando function verifica_sessao() { só é fechado na linha 492, onde tem
<?
}
?>

Se não for isso, avisa de eu tento ver se eu perdi algo....



#752510 Dar Um Submit Apenas Numavariável

Posted by nandotrade on 22/06/2006, 11:46 in HTML, CSS e Metodologias

Quero pegar o valor da resolução no PHP.
Para isso preciso fazer um submit dessa variável.
Como construir isso?

ISSO TERIA DE FICAR ABAIXO DA TAG <HEAD>

<script language="JavaScript">

var largura = window.screen.availWidth; // pegou o valor da largura definida na estação do usuário.

COMO DAR O SUBMIT APENAS DO VALOR LARGURA???????
NÃO EXISTE UM FORM, POIS QUEROAPENAS PASSAR O CONTEÚDO DE LARGURA.

</script>




IPB Skin By Virteq