Jump to content


FernandoMoura

Member Since 05/06/2011
Offline Last Active 26/06/2011, 15:41
-----

Topics I've Started

Sistema De Upload, Recuperando Dados De Listbox E Relacionamento De Ta

26/06/2011, 00:28

Bom é o seguinte, estou fazendo um sistema e contém um sistema de upload para usuário especifico
assim utilizei um ListBox e nele recupero do banco os clientes.
Até aí tudo bem está funcionando, aí vem o problema, eu uso 3 tabelas no banco
- usuarios
- arquivos
- distribuicao

Posted Image

primeira dúvida: como eu recupero o cpf a partir do nome que lista no ListBox (segue abaixo), pois o cpf
é a chave primaria de usuarios e chave estrangeira em distribuicao.

segunda dúvida: como eu poderia fazer essa ligação entre as duas tabelas, para que quando eu consulta-se
o cliente especifico eu saber qual arquivo é dele.

upload.php
	<form id="uploadDoc" name="uploadDoc" method="post" action="functionUpload.php?funcao=upload" enctype="multipart/form-data">
          <table width="70%" border="0" align="center">
            <tr>
            <td width="30%" align="right">Cliente:</td>
            <td width="70%" align="left">
				<select name="listaClientes" id="listaClientes">
					    <option selected="selected">Selecione</option>
						<?php do { ?>
					    <option value="list"><?php echo $row_buscaUp['nome']; ?></option>
					  	<?php } while ($row_buscaUp = mysql_fetch_assoc($buscaUp)); ?>
		        </select>
			</td>
            </tr>
            <tr>
              <td width="30%" align="right">CPF:</td>
              <td width="70%" align="left"><?php  ?></td>
            </tr>			
            <tr>
              <td width="30%" align="right">Descrição:</td>
              <td width="70%" align="left"><input name="descricao" type="text" id="descricao" size="40" /></td>
            </tr>			  
            <tr>
              <td align="right">Selecione o arquivo:</td>
              <td align="left"><label for="arquivo"></label>
                <input type="file" name="arquivo" id="arquivo" size="40 "/></td>
            </tr>
            <tr>
                <td align="left"><input type="submit" name="enviar" id="enviar" value="Enviar" /></td>
            </tr>
          </table>
        </form>

funcao_upload.php

<?php 
require_once('../Connections/conexao.php');

$descricao = $_POST['descricao'];

if($_GET['funcao'] == "upload" && is_file($_FILES['arquivo']['tmp_name'])){
	
	$doc = $_FILES['arquivo']['name'];
	
	$doc = str_replace(" ", "_", $doc);
	$doc = str_replace("ã", "a", $doc);
	$doc = str_replace("á", "a", $doc);
	$doc = str_replace("à", "a", $doc);
	$doc = str_replace("é", "e", $doc);
	$doc = str_replace("ê", "e", $doc);
	$doc = str_replace("è", "e", $doc);
	$doc = str_replace("í", "i", $doc);
	$doc = str_replace("ì", "i", $doc);
	$doc = str_replace("ó", "o", $doc);
	$doc = str_replace("õ", "o", $doc);
	$doc = str_replace("ç", "c", $doc);

	$doc = strtolower($doc);
	
	if(!eregi("^document\/(doc|docx|rtf|xls|pdf)$", $_FILES['arquivo']['type'])){
		echo "<META HTTP-EQUIV=REFRESH CONTENT='0; URL=uploadDocs.php'>
		<script type=\"text/javascript\">
		alert(\"Formato inválido\");
		</script>";
	}else{
		if(file_exists("docs/$doc")){
			$a = 1;
			while(file_exists("docs/[$a]$doc")){
				$a++;
			}
			
			$doc = "[".$a."]".$doc;
			
		}		
		if(!move_uploaded_file($_FILES['arquivo']['tmp_name'], "docs/".$doc)){
			
			echo "
		<META HTTP-EQUIV=REFRESH CONTENT='0; URL=uploadDocs.php'>
		<script type=\"text/javascript\">
		alert(\"Erro ao enviar o arquivo.\");
		</script>
		";
			
		}	
	}
		$sql = "INSERT INTO arquivos (idarq,caminho,descricao) VALUES ('','$doc','$descricao')";
		$upload = mysql_query($sql, $conexao) or die(mysql_error());
		header("Location: uploadDocs.php");
}
?>

outra coisa, estou com um problema no eregi, na comparação quando entra no if só inseri o caminho no
banco e não coloca o arquivo na pasta.

Se alguém puder ajudar ou souber uma maneira mais fácil de resolver eu agradeço

IPB Skin By Virteq