Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Carcleo

Varrer string

Recommended Posts

Ola pessoal preciso de uma função que faça o seguinte:

 

tenho a seguinhte string

 

$string = "iiiiiiiiii;;;ooooooooo;;;lllllllllll";

 

Eu queria criar um array a partir dessa string onde o primeiro indice desse array vai até a primeira sequencia de ";;;" o segundo indice indice ate a segunda sequencia de ";;;" e o terceiro indice até o fim da string.

 

Preciso tambem saber quantos indices terá esse array.

 

Como faz isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok.

 

Deu certo. Masa agora, dentro do mesmo assunto, estou com um problema que é para alguem (acho) que manja bem de php para m ajudar.

 

Fiz o upload de varias imagens certo.

 

Gravei no banco um string com, os nomes das imagens separados po ";;;" certo;

 

Agora a minha dificuldade esta sendo a seguinte:

 

Quero alterar uma determinada foto das que foram uplodeadas.

 

Chegueio até fazer o form de alteração vendo quantas imagens temn no mysql no campo Foto usando a função explode ";;;" e depois, a cada indice do explode fazer um camnpo (html) file e depopis mostrar uma previa (pequeno desenho) da figura gravada no banco na pasta.

 

Mas, agora, se eu quiser alterar apenas uma das figuras tanto uplodeadas quando tambem atualizar no banco bem excluir da pasta a figura alterada como faço?

 

Segue form (Alteração) que consegui criar:

<? if ($acao=="listar") { ?>
    <b>Envio das fotos</b><br />
    <form action="FormUpdate.php?acao=alterar" method="post"  enctype="multipart/form-data">
    <?
    include("../global/conexao.php");
    $sql = "Select Foto from imoveiscadastrovenda where Id=2";
    $sql1 = mysql_query($sql);
    //if (mysql_num_rows($sql1)==0) {echo "Não há imagens para esse cadastro!";}

	$nome_das_fotos = mysql_fetch_array($sql1);
	$fotografias = $nome_das_fotos['Foto'];
	$fotografia = explode(";;;", $fotografias);
	$quantidade = count($fotografia);
	if ($fotografias=="") {echo "Não há imagens para esse cadastro!";}
	else {
          for ($i=0; $i<$quantidade;$i++) { 
          $endereco="teste_upload/mini/$fotografia[$i]";
             if (!eregi(';;;', $fotografias['Foto'])) {
                  $fotografia[$i]=$fotografias['Foto']; 
                                                      ?>              
                  <input type="file" name="Fotos[]" value="<?=$endereco;?>">
                  <img src="<?=$endereco;?>" border="0"  width="30"/><br />
                                                      <? 
                                                      }
             else  							          { 
                                                      ?>              
                  <input type="file" name="Fotos[]" value="<?=$endereco;?>">
                  <img src="<?=$endereco;?>" border="0"  width="30"/><br />
                                                      <?
                                                      }  
                                          } // FIM DO FOR
	    }
    ?>
    <input type="submit" value="OK"/>
    </form>
<? } ?>

<? ////////////////////////////////////////////////////////////////////////////////////?>
<? if ($acao=="alterar") { 

include("Multiplos_Uploads.php");
$NomeFotos = explode(';',$NomeTodasFotos);
$Fotos;
                       }
?>

<? ////////////////////////////////////////////////////////////////////////////////////?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

que é para alguem (acho) que manja bem de php para m ajudar.

Infelizmente não, porque da maneira que você modelou o banco de dados e estruturou seu php, esse problema vai gerar uma gambiarrera desgraçada para ser solucionado.

 

O que você está fazendo é ter um registro de imagens para cada registro de imóvel. E isso está errado, pois trata-se de uma relação 1:N, ou seja, onde um imóvel tem N imagens, então cada imagem tem que ter o seu registro proprio.

 

Começe dando uma lida em relacionamento de tabelas, veja: http://blog.thiagobelem.net/mysql/relacionamento-de-tabelas-no-mysql/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então voce quer dizer que para cada imovel lançado, caso queira cadastrar mais de uma imagem para ele, nesse caso na tabela de imoveis tem de haver mais de um field Foto?

 

Tipo Foto1, Foto2, Foto3...... FotoN?

Compartilhar este post


Link para o post
Compartilhar em outros sites

cada foto em uma linha

ex

-------------------
|id_imovel |  foto |
-------------------
|    1     | foto1 |
|    1     | foto2 |
        ...
|    1     | fotoN |
--------------------

Compartilhar este post


Link para o post
Compartilhar em outros sites

nesse caso na tabela de imoveis tem de haver mais de um field Foto?

 

Você terá 2 tabelas:

 

Tabela Imóvel http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Apenas os dados do imóvel

Tabela Fotos Imóvel http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Apenas dados da foto

 

Por exemplo:

 

Imagem Postada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi joão vou fazer aqui.

 

Este jeito que estou fazendo de gravar multiplas imagens em um só campo, me parece que não tem meios de fazer update nao.

Só insert mesmno.;

 

Jeito até tem mas que da um nó na cabeça issoi dá!

Compartilhar este post


Link para o post
Compartilhar em outros sites

joão qual programa você usa para fazer modelagem??

 

Depende,

 

Se eu estiver modelando a aplicação, utilizo Eclipse UML2 Tools

Se eu estiver modelando banco de dados, utilizo MySQL Workbench

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.