Jump to content


Photo

Receber Mensagem Unica


  • Faça o login para participar
5 replies to this topic

#1 designNEWer

designNEWer

    Normal

  • Usuários
  • 113 posts
  • Sexo:Não informado

Posted 04/05/2007, 20:44

eu tenho uma string

$oooo = "arroz, feijao, batata, prato"

Procurei, mas minha ignorancia nao deixou eu achar. Como fazer para separar estas palavras, verificar numa outra tabela se existem. Se sim, adiciona mais 1 naquele palavra. Se nao, cria uma nova coluna.

Agradeço muito desde já.

=== RÉSOLVIDO ===

Edição feita por: designNEWer, 05/05/2007, 20:42.

|| Sopojo.com - Especulando sobre o futuro da internet
Entenda o Mercado de Crédito de Carbono
Leia sobre MDL, Mecanismo de Desenvolvimento Limpo
Eu Odeio Target="_Blank" - http://EuOdeioTarget...k.blogspot.com/

#2 pyro3x

pyro3x

    E

  • Usuários
  • 201 posts
  • Sexo:Masculino

Posted 05/05/2007, 11:02

Se sim, adiciona mais 1 naquele palavra. Se nao, cria uma nova coluna.


se tem adiciona? como assim?...seria ..se não tem..né?

#3 REVISTAPHP

REVISTAPHP

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 05/05/2007, 11:06

Simples,

da um $resultado = explode(',',$oooo);

agora é so percorrer o array e ir fazendo sua consulta no banco
*************************************************************
LISTA PHP
http://groups.google.../group/listaphp
*************************************************************
LISTA AJAX
http://groups.google...oup/ajax-brasil
*************************************************************
LISTA WEBSTANDARDS
http://groups.google...ta-webstandards
*************************************************************
REVISTA PHP
http://WWW.REVISTAPHP.COM.BR

#4 pyro3x

pyro3x

    E

  • Usuários
  • 201 posts
  • Sexo:Masculino

Posted 05/05/2007, 11:13

tenta ae ;)


botei a sua tabela com o nome de cardapio ;)

$comidas = "arroz,feijao,batata,prato";
$dados   = explode(",",$comidas);
$total   = count($dados);
for($i=0;$i<$total;$i++)
{
	$comida = $dados[$i];
	$sql = mysql_query("SELECT * FROM cardapio WHERE comida='$comida'") or die(mysql_error());
	if(!mysql_num_rows($sql) > 0){
	$sqlc = mysql_query("INSERT INTO cardapio (id,comida) VALUES ('','$comida')")or die(mysql_error());
	}else{
	echo $comida." já foi adicionada<br />";
	}
	if($sqlc) echo $comida." foi adicionada!<br />";	
}

1)retirei as virgulas
2)contei o numero de palavras/dados
3)fiz um for para varrer todos dados
4) verifiquei se a comida ja foi inserida..caso naum..insere ;)

depois da uma lida:
http://br2.php.net/m...ion.explode.php
http://br2.php.net/m...ction.count.php
;)

Edição feita por: pyro3x, 05/05/2007, 11:21.


#5 designNEWer

designNEWer

    Normal

  • Usuários
  • 113 posts
  • Sexo:Não informado

Posted 05/05/2007, 20:09

obrigado pelo codigo. Mas se a palavra já existir, eu tentei fazer com que adicionase +1 no campo 'numeros'.

Exemplo, arroz já existe, entao ele adicona +1 no 'numeros'. Fiz aqui só que deu erro.
|| Sopojo.com - Especulando sobre o futuro da internet
Entenda o Mercado de Crédito de Carbono
Leia sobre MDL, Mecanismo de Desenvolvimento Limpo
Eu Odeio Target="_Blank" - http://EuOdeioTarget...k.blogspot.com/

#6 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 05/05/2007, 20:22

Não tem misterio re-aproveitando o código do "pyro3x" fica tipo assim:

$comidas = "arroz,feijao,batata,prato";
$dados = explode(",",$comidas);
foreach ($dados as $comida) { 
 $sql = mysql_query("SELECT * FROM `cardapio` WHERE comida='$comida' LIMIT 1;") or die(mysql_error());
 if(mysql_num_rows($sql) == 0){
  $sqlc = mysql_query("INSERT INTO cardapio (id, comida, numeros) VALUES ('', '$comida', '0');") or die(mysql_error());
 } else {
  mysql_query("UPDATE cardapio SET numeros=numeros+1 WHERE comida='$comida' LIMIT 1;");
 }	
}

A diferença é so colocar uma SQL extra ... em vez da mensagem ...




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq