aca tendo un codigo con un formulario donde te deja elejir el separador incluso y esta hecho para que inserte en tu base de datos...
solo tenes que crear el archivo de conexion dentro de la carpeta Conections y llamarlo: ConectionBDExtract.php
y ella variable de conexion la llamas: $ConectionBD
y listo!!!!
Código PHP:
<?php require_once('Connections/ConectionBDExtract.php'); ?><?php
$TXTAREAini="<textarea name='textfield' id='textfield' cols='100' rows='10'>";
$TXTAREAfin="</textarea>";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Extractor de mails | online | direcciones de mails | extaer | php | script |</title>
<script>
function mostrarcampo(id){
document.getElementById(id).style.display="";
}
function ocultarcampo(id){
document.getElementById(id).style.display="none";
}
</script>
<script language="javascript" type="text/javascript">
function borra(ID){
var texto = document.getElementById(ID).value;
if(texto == 'Pegue el texto aqui'){
document.getElementById(ID).value='';
}
}
function restaura(ID){
var texto = document.getElementById(ID).value;
if(texto == '' || texto == ' '){
document.getElementById(ID).value='Pegue el texto aqui';
}
}
</script>
<script type="text/javascript">
function cuenta(id){
var total = document.getElementById(id).value;
document.getElementById('total').value=" "+total+" ";
document.getElementById('extraidos').style.display='';
document.getElementById('extrayendo').style.display='none';
//alert(total);
}
</script>
</head>
<body onload="cuenta('tot');">
<div align="center"> <form id="form1" name="form1" method="post" action="">
<p><strong>Texto:</strong></p>
<p>
<textarea id="tx" onclick="borra('tx');" onblur="restaura('tx');" name="texto" cols="50" rows="6"><?php if($_POST['texto'] != ""){ echo $_POST['texto']; }else{ ?>Pegue el texto aqui<?php } ?></textarea>
</p>
<p><strong>Formato:
</strong>
<input name="tiposep" type="radio" value="linea" checked="checked" onclick="ocultarcampo('separ');" />
Enter
|
<input name="tiposep" type="radio" value="coma" onclick="ocultarcampo('separ');" />
, |
<input name="tiposep" type="radio" value="puntocoma" onclick="ocultarcampo('separ');" />; |
<input name="tiposep" type="radio" id="otro" value="otro" onclick="mostrarcampo('separ');" />
Otro<div id="separ" style="display:none;"> > separado por:
<input name="separador" type="text" size="4" maxlength="1" /></div>
</p>
<p>
<input type="submit" name="Submit" value="Extraer" />
</p>
</form>
<hr />
<div id="extrayendo" style="display:">
<p><img src="procesando.gif" width="32" height="32" /> Extrayendo...</p>
<p> Favor espere..</p>
</div>
<div id="extraidos" style="display:none;">
<p><strong>Mails Extraidos:</strong>
<label>
<input name="total" type="text" id="total" size="10" value="" />
</label>
</p>
<?php
$i="0";
if (isset($_REQUEST['texto']) && !empty($_REQUEST['texto'])) {
// obtiene el texto del area de texto
$text = $_REQUEST['texto'];
}
// extraer emails
if (!empty($text)) {
$res = preg_match_all(
"/[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}/i",
$text,
$matches
);
if ($res) {
/// inicio separador <br />
if(isset($_POST['tiposep']) && ($_POST['tiposep'] == "linea")){
foreach(array_unique($matches[0]) as $email) {
echo $email . "<br />";
/////////// inicio insert ////////////
$mailp=$email;
mysql_select_db($database_ConectionBD, $ConectionBD);
$query_mail = "SELECT mail FROM mails WHERE mail='".$mailp."'";
$mail = mysql_query($query_mail, $ConectionBD) or die(mysql_error());
$row_mail = mysql_fetch_assoc($mail);
$totalRows_mail = mysql_num_rows($mail);
if(($row_mail['mail'] == "") && ($mailp != "")){
$id="";
$mailpi=$mailp;
$insertSQL = "INSERT INTO mails (Idmail, mail) VALUES ('".htmlentities($id)."','".htmlentities($mailpi)."')";
mysql_select_db($database_ConectionBD, $ConectionBD);
$Result1 = mysql_query($insertSQL, $ConectionBD) or die(mysql_error());
}
/////////// inicio insert ////////////
$i++;
}
}
/// fin separador <br />
/// inicio separador ;
if(isset($_POST['tiposep']) && ($_POST['tiposep'] == "coma")){
echo $TXTAREAini;
foreach(array_unique($matches[0]) as $email) {
echo $email . ",";
/////////// inicio insert ////////////
$mailp=$email;
mysql_select_db($database_ConectionBD, $ConectionBD);
$query_mail = "SELECT mail FROM mails WHERE mail='".$mailp."'";
$mail = mysql_query($query_mail, $ConectionBD) or die(mysql_error());
$row_mail = mysql_fetch_assoc($mail);
$totalRows_mail = mysql_num_rows($mail);
if(($row_mail['mail'] == "") && ($mailp != "")){
$id="";
$mailpi=$mailp;
$insertSQL = "INSERT INTO mails (Idmail, mail) VALUES ('".htmlentities($id)."','".htmlentities($mailpi)."')";
mysql_select_db($database_ConectionBD, $ConectionBD);
$Result1 = mysql_query($insertSQL, $ConectionBD) or die(mysql_error());
}
/////////// inicio insert ////////////
$i++;
}
echo $TXTAREAfin;
}
/// fin separador ;
/// inicio separador ,
if(isset($_POST['tiposep']) && ($_POST['tiposep'] == "puntocoma")){
echo $TXTAREAini;
foreach(array_unique($matches[0]) as $email) {
echo $email . ";";
/////////// inicio insert ////////////
$mailp=$email;
mysql_select_db($database_ConectionBD, $ConectionBD);
$query_mail = "SELECT mail FROM mails WHERE mail='".$mailp."'";
$mail = mysql_query($query_mail, $ConectionBD) or die(mysql_error());
$row_mail = mysql_fetch_assoc($mail);
$totalRows_mail = mysql_num_rows($mail);
if(($row_mail['mail'] == "") && ($mailp != "")){
$id="";
$mailpi=$mailp;
$insertSQL = "INSERT INTO mails (Idmail, mail) VALUES ('".htmlentities($id)."','".htmlentities($mailpi)."')";
mysql_select_db($database_ConectionBD, $ConectionBD);
$Result1 = mysql_query($insertSQL, $ConectionBD) or die(mysql_error());
}
/////////// inicio insert ////////////
$i++;
}
echo $TXTAREAfin;
}
/// fin separador ,
// inicio separador elejido por usuario
if(isset($_POST['separador']) && ($_POST['separador'] != "") && ($_POST['tiposep'] == "otro")){
echo $TXTAREAini;
$separador=$_POST['separador'];
foreach(array_unique($matches[0]) as $email) {
echo $email.$separador;
/////////// inicio insert ////////////
$mailp=$email;
mysql_select_db($database_ConectionBD, $ConectionBD);
$query_mail = "SELECT mail FROM mails WHERE mail='".$mailp."'";
$mail = mysql_query($query_mail, $ConectionBD) or die(mysql_error());
$row_mail = mysql_fetch_assoc($mail);
$totalRows_mail = mysql_num_rows($mail);
if(($row_mail['mail'] == "") && ($mailp != "")){
$id="";
$mailpi=$mailp;
$insertSQL = "INSERT INTO mails (Idmail, mail) VALUES ('".htmlentities($id)."','".htmlentities($mailpi)."')";
mysql_select_db($database_ConectionBD, $ConectionBD);
$Result1 = mysql_query($insertSQL, $ConectionBD) or die(mysql_error());
}
/////////// inicio insert ////////////
$i++;
}
echo $TXTAREAfin;
}
// fin separador elejido por usuario
}
else {
echo "No se hayaron mails";
}
}
?>
<label>
<input type="hidden" name="tot" id="tot" value="<?php echo $i; ?>" />
</label></div>
<p> </p>
</div>
</body>
</html>
ah, me olvide de decirte que tambien valida que no haya en la base de datos un mail igual antes de insertarlo asi no tenes mails repetidos...