Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde queridos,
Depois de resolvido um problema com inserção de fotos, agora tenho outro
No sistema tenho 4 páginas
istagem.php
cadastro.php
editar.php
foto.php
Quando vou cadastrar é normal e tranquilo, faço o cadastro e incluo a foto. Na edição eu tirei a alteração da foto, então posso mudar o cadastro e a foto não altera. para alterar a foto eu coloquei um iframe na página de edição
<iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php" frameborder="0">
Bom, então se quiser alterar só os dados é tranquilo, e se quiser só mudar somente a foto também, pois basta inserir o ID no iframe que puxa o campo do ID e alterar. Porém se eu digitar um ID diferente, ele vai alterar o ID de outro cliente.
Está muito bom, mas tem esse problema.
Teria um jeito de já trazer o ID no input do iframe quando eu selecionasse e entrasse na edição do cliente? Assim ele já viria marcado e seria apenas editar a foto sem problemas de errar o id e trocar a foto do cliente errado.
Só para esclarecer, no foto.php está assim:
$id_cliente = $_POST['id_cliente'];
$foto = $_FILES["foto"];
if ($_POST['atualizar']) {
// atualiza os dados no banco
$sql = mysql_query("update clientes set foto = '".$nome_imagem."' where id_cliente = ".$id_cliente);header('Location: foto.php');
exit;
}echo "Erro ao atualizar.";
}
}
e mais abaixo
<td><input name="id_cliente" type="text" value="<?=@mysql_result($sql,0,id_cliente)?>" size="5""></td>
<?php
// Seleciona todos os usuários
$sql = mysql_query("SELECT * FROM clientes WHERE id_cliente=$_GET[id]");
// Exibe as informações de cada usuário
while ($cçiente = mysql_fetch_object($sql)) {
// Exibimos a foto
echo "<img src='fotos/".$cliente->foto."' alt='Foto de exibição' /><br />";}
?>
<input type="file" name="foto" /><br /><br />
<input type="hidden" name="enviar" value="1" />
<input type="submit" name="atualizar" value="Atualizar" />
Essa acima é a página da foto.php, no qual insiro o id do cliente e edito a foto.
Abaixo já na página edição.php insiro o iframe
<iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php" frameborder="0">
Que me traz o campo para inserir o ID, a foto do cliente e os campos para inserção das fotos
Queria quando chamasse o cliente, o ID dele já viesse no input do iframe. Dessa forma não teria o risco de eu digitar outro ID e trocar a foto do cliente errado.
Sem resultado Daniel, continua trazendo o campo vazio.
Sem iframe eu consegui trazer o valor usando esse código, porém ele não está atualizando, mas traz o valor do ID marcado já no input. porém queria isso pelo iframe.
<?if ($foto != '') {
$foto = "$foto.php";
if (!file_exists($foto)) {
echo "A página $foto não pode ser encontrada."; //Caso não exista a página
} else { include($foto); //inclui a página pedida caso ela exista
}
} else { include ("foto.php"); / Aqui insere uma página ou conteúdo caso $pagina esteja em branco /
}
?>Ue em vez de include coloque iframe já com id escolhido.
<?if ($foto != '') {
$foto = "$foto.php";
if (!file_exists($foto)) {
echo "A página $foto não pode ser encontrada."; //Caso não exista a página
} else { <iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php?id=<?php echo $foto?>" frameborder="0"> //inclui a página pedida caso ela exista
}
} else { <iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php" frameborder="0"> /* Aqui insere uma página ou conteúdo caso $pagina esteja em branco */
}
/*dentro da página voce coloca assim $id_cliente = $_REQUEST['id']; em vez de $id_cliente = $_POST['id_cliente'];*/
?>Erro na linha
} else { <iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php?id=<?php echo $foto?>" frameborder="0"> //inclui a página pedida caso ela existaColoque a entrada da tag para o php
<?if ($foto != '') {
$foto = "$foto.php";
if (!file_exists($foto)) {
echo "A página $foto não pode ser encontrada."; //Caso não exista a página
} else { ?>
<iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php?id=<?php echo $foto?>" frameborder="0"> //inclui a página pedida caso ela exista
<?php }
} else {?>
<iframe height="300" scrolling="No" name="foto_frame" id="foto_frame" width="150" src="foto.php" frameborder="0"> /* Aqui insere uma página ou conteúdo caso $pagina esteja em branco */
<?php }
/*dentro da página voce coloca assim $id_cliente = $_REQUEST['id']; em vez de $id_cliente = $_POST['id_cliente'];*/
?>Agora não aparece nem a foto e nem traz o ID. Você pode verificar isso, te enviei o sistema por MP
Queridos, resolvido. Dei uma boa pesquisada e encontrei a solução.
<?
$id = $_GET['id'];
$s = '<iframe src="foto.php?id=' .$id. '" name="foto" width="415" height="495" marginheight="0" align="middle" scrolling="No" frameborder="0" id="" allowtransparency="yes"></iframe>';
echo $s;
?>
A fonte foi essa: http://forum.imasters.com.br/topic/186932-passando-um-varivel-para-um-iframe/
Eu acho que você só conseguirá passando por get, já que você altera como iframe.
Session e cookies também funciona.