File: D:/HostingSpaces/SBogers10/komma-mediadesign.nl/wwwroot/kes/admin/importeren_bestand.php
<?php
$verificatie = $_POST['verificatie'];
$activatie_mail_sturen = false;
if($verificatie == "ja") { $activatie_mail_sturen = true; }
$kleur = true;
$data = array();
function add_person( $voornaam, $tussenvoegsel, $achternaam, $geslacht, $emailadres, $geboortedatum, $bedrijfsnaam, $telefoonnummer, $taal, $categorie_a, $categorie_b){
global $data;
$data []= array(
'voornaam' => $voornaam,
'tussenvoegsel' => $tussenvoegsel,
'achternaam' => $achternaam,
'geslacht' => $geslacht,
'emailadres' => $emailadres,
'geboortedatum' => $geboortedatum,
'bedrijfsnaam' => $bedrijfsnaam,
'telefoonnummer' => $telefoonnummer,
'taal' => $taal,
'categorie_a' => $categorie_a,
'categorie_b' => $categorie_b
);
}
if ( $_FILES['file']['tmp_name'] ){
$dom = DOMDocument::load( $_FILES['file']['tmp_name'] );
$rows = $dom->getElementsByTagName( 'Row' );
$first_row = true;
foreach ($rows as $row) {
if ( !$first_row ){
$voornaam = "";
$tussenvoegsel = "";
$achternaam = "";
$geslacht = "";
$emailadres = "";
$geboortedatum = "";
$bedrijfsnaam = "";
$telefoonnummer = "";
$taal = "";
$categorie_a = "";
$categorie_b = "";
$index = 1;
$cells = $row->getElementsByTagName( 'Cell' );
foreach( $cells as $cell ){
$ind = $cell->getAttribute( 'ss:Index' );
if ( $ind != null ) $index = $ind;
if ( $index == 1 ) $voornaam = $cell->nodeValue;
if ( $index == 2 ) $tussenvoegsel = $cell->nodeValue;
if ( $index == 3 ) $achternaam = $cell->nodeValue;
if ( $index == 4 ) $geslacht = $cell->nodeValue;
if ( $index == 5 ) $emailadres = $cell->nodeValue;
if ( $index == 6 ) $geboortedatum = $cell->nodeValue;
if ( $index == 7 ) $bedrijfsnaam = $cell->nodeValue;
if ( $index == 8 ) $telefoonnummer = $cell->nodeValue;
if ( $index == 9 ) $taal = $cell->nodeValue;
if ( $index == 10 ) $categorie_a = $cell->nodeValue;
if ( $index == 11 ) $categorie_b = $cell->nodeValue;
$voornaam = checkData($voornaam);
$tussenvoegsel = checkData($tussenvoegsel);
$achternaam = checkData($achternaam);
$geslacht = checkData($geslacht);
$emailadres = checkData($emailadres);
$geboortedatum = checkData($geboortedatum);
$bedrijfsnaam = checkData($bedrijfsnaam);
$telefoonnummer = checkData($telefoonnummer);
$taal = checkData($taal);
$categorie_a = checkData($categorie_a);
$categorie_b = checkData($categorie_b);
$index += 1;
}
add_person( $voornaam, $tussenvoegsel, $achternaam, $geslacht, $emailadres, $geboortedatum, $bedrijfsnaam, $telefoonnummer, $taal, $categorie_a, $categorie_b );
}
$first_row = false;
}
}
?>
<table cellpadding="5" cellspacing="0" border="0">
<tr>
<th>Nr</th>
<th>Voornaam</th>
<th>Tussenvoegsel</th>
<th>Achternaam</th>
<th>Geslacht</th>
<th>Emailadres</th>
<th>Geboortedatum</th>
<th>Bedrijfsnaam</th>
<th>Telefoonnummer</th>
<th>Taal</th>
<th><center>Categorie A</center></th>
<th><center>Categorie B</center></th>
<th>Foutmeldingen</th>
</tr>
<?php
$counter = 0;
foreach( $data as $row ) {
if($kleur){
$kleur = false;
}else{
$kleur = true;
}
$counter++;
$voornaam = $row['voornaam'];
$voornaam = trim($voornaam);
$voornaam = utf8_decode($voornaam);
$lengte_voornaam = strlen($voornaam);
if(($lengte_voornaam > 1) && ($lengte_voornaam < 45)){
$valid_voornaam = true;
}else{
$valid_voornaam = false;
}
$tussenvoegsel = $row['tussenvoegsel'];
$tussenvoegsel = trim($tussenvoegsel);
$tussenvoegsel = utf8_decode($tussenvoegsel);
$lengte_tussenvoegsel = strlen($tussenvoegsel);
if(($lengte_tussenvoegsel > 1) && ($lengte_tussenvoegsel < 45)){
$valid_tussenvoegsel = true;
}else{
$valid_tussenvoegsel = false;
}
if(empty($tussenvoegsel)){ $valid_tussenvoegsel = true; }
$achternaam = $row['achternaam'];
$achternaam = trim($achternaam);
$achternaam = utf8_decode($achternaam);
$lengte_achternaam = strlen($achternaam);
if(($lengte_achternaam > 1) && ($lengte_achternaam < 45)){
$valid_achternaam = true;
}else{
$valid_achternaam = false;
}
$geslacht = $row['geslacht'];
if($geslacht == "man"|| $geslacht == "vrouw"){
$valid_geslacht = true;
}else{
$valid_geslacht = false;
}
if(!preg_match('/[\w-\.]+@([\w-]+\.)+[\w-]{2,4}/', $row['emailadres'])){
$valid_emailadres = false;
$al_geregistreerd = false;
}else{
$emailadres = $row['emailadres'];
$emailadres = trim($emailadres);
$lengte_emailadres = strlen($emailadres);
$emailadres = strtolower($emailadres);
if($lengte_emailadres < 250){
$emailadres = checkData($emailadres);
$q_mail = sprintf("SELECT kes_emailadressen.emailadres FROM kes_emailadressen WHERE emailadres='%s' LIMIT 0,1", $emailadres);
$r_mail = mysql_query($q_mail);
$rec_mail = mysql_fetch_assoc($r_mail);
$data_mailadres = $rec_mail['emailadres'];
if($data_mailadres != $emailadres){
$valid_emailadres = true;
$al_geregistreerd = false;
}else{
$valid_emailadres = false;
$al_geregistreerd = true;
}
}else{
$valid_emailadres = false;
$al_geregistreerd = false;
}
}
if(!empty($row['geboortedatum'])){
$geboortedatum_reparatie = false;
$getallen = explode('-', $row['geboortedatum']);
$jaar = $getallen[0];
$maand = $getallen[1];
$dag = $getallen[2];
$dag = substr($dag, 0, 2);
$dag = trim($dag);
$maand = trim($maand);
$jaar = trim($jaar);
if(ereg("^[0-9]*$",$dag) && ereg("^[0-9]*$",$maand) && ereg("^[0-9]*$",$jaar) && !empty($dag) && !empty($maand) && !empty($jaar)){
if(strlen($jaar)<4){
$valid_geboortedatum = false;
}else if($jaar < 1900){
$valid_geboortedatum = false;
}else{
if(strlen($dag)<2){
$dag = "0".$dag;
}
if(strlen($maand)<2){
$maand = "0".$maand;
}
$geboortedatum = $jaar."-".$maand."-".$dag;
if( checkdate($maand, $dag, $jaar) && ($jaar < date('Y')) ){
$valid_geboortedatum = true;
$geboortedatum_view = $dag."-".$maand."-".$jaar;
}else{
$valid_geboortedatum = false;
}
}
}else if (empty($dag) && empty($maand) && empty($jaar)) {
$valid_geboortedatum = true;
$geboortedatum = "0000-00-00";
$geboortedatum_view = "00-00-0000";
}else{
$valid_geboortedatum = false;
}
}else{
$valid_geboortedatum = true;
$geboortedatum = "0000-00-00";
$geboortedatum_view = "00-00-0000";
}
if($valid_geboortedatum != true){
$geboortedatum = "0000-00-00";
$valid_geboortedatum = true;
$geboortedatum_reparatie = true;
$geboortedatum_view = "00-00-0000";
}
$bedrijfsnaam = $row['bedrijfsnaam'];
$bedrijfsnaam = trim($bedrijfsnaam);
$bedrijfsnaam = utf8_decode($bedrijfsnaam);
$lengte_bedrijfsnaam = strlen($bedrijfsnaam);
if($lengte_bedrijfsnaam < 250){
$valid_bedrijfsnaam = true;
}else{
$valid_bedrijfsnaam = false;
}
$telefoonnummer = $row['telefoonnummer'];
$telefoonnummer = trim($telefoonnummer);
$telefoonnummer = str_replace("-","",$telefoonnummer);
$telefoonnummer = str_replace(" ","",$telefoonnummer);
$telefoonnummer = str_replace("+","00",$telefoonnummer);
if(ereg("^[0-9]*$",$telefoonnummer)){
$lengte_telnr = strlen($telefoonnummer);
if($lengte_telnr == 10 || $lengte_telnr == 13){
$valid_telefoonnummer = true;
}else{
$valid_telefoonnummer = false;
}
}else{
$valid_telefoonnummer = false;
}
if(empty($telefoonnummer)){ $valid_telefoonnummer = true; }
$taal = $row['taal'];
$taal = trim($taal);
$taal = strtolower($taal);
if(empty($taal)){ $taal = "nederlands"; }
if($taal == "nederlands" || $taal == "frans" || $taal == "duits" || $taal == "engels" || $taal == "spaans"){
$valid_taal = true;
}else{
$valid_taal = false;
}
$categorie_a = $row['categorie_a'];
$categorie_a = trim($categorie_a);
$categorie_a = utf8_decode($categorie_a);
$categorie_a = strtolower($categorie_a);
$categorie_a = str_replace(" ","",$categorie_a);
$lengte_categorie_a= strlen($categorie_a);
if(($lengte_categorie_a > 0) && ($lengte_categorie_a < 25)){
$valid_categorie_a = true;
}else{
$valid_categorie_a = false;
}
if(empty($categorie_a)){ $valid_categorie_a = true; $categorie_a = "import_bestand"; }
$categorie_b = $row['categorie_b'];
$categorie_b = trim($categorie_b);
$categorie_b = utf8_decode($categorie_b);
$categorie_b = strtolower($categorie_b);
$categorie_b = str_replace(" ","",$categorie_b);
$lengte_categorie_b = strlen($categorie_b);
if($lengte_categorie_b < 25){
$valid_categorie_b = true;
}else{
$valid_categorie_b = false;
}
if($valid_voornaam && $valid_tussenvoegsel && $valid_achternaam && $valid_geslacht && $valid_emailadres && $valid_geboortedatum && $valid_bedrijfsnaam && $valid_telefoonnummer && $valid_taal && $valid_categorie_a && $valid_categorie_b && !$al_geregistreerd){
if($taal == "nederlands"){ $taal_afkorting = "nl"; }else if($taal == "engels"){ $taal_afkorting = "en";
}else if($taal == "duits"){ $taal_afkorting = "de"; }else if($taal == "frans"){ $taal_afkorting = "fr";
}else if($taal == "spaans"){ $taal_afkorting = "sp"; }
include_once("../config/all_kes_con_".$taal_afkorting.".php");
$datum = date("Y-m-d");
$tijd = date("H:i:s");
$password = "";
for ($i=1;$i<=15;$i++){
$trap=rand(0,32);
$password=$password.substr("abcdefghkmnopqrstuvwxyz1234567890",$trap,1);
}
$code=strtoupper($password);
$password_client = "";
for ($i=1;$i<=15;$i++){
$trap_client=rand(0,32);
$password_client=$password_client.substr("abcdefghkmnopqrstuvwxyz1234567890",$trap_client,1);
}
$code_client=strtoupper($password_client);
if($activatie_mail_sturen){
$geactiveerd = "nee";
}else{
$geactiveerd = "ja";
}
if($geslacht == "man"){
$aanhef = $config['taal']['aanhef_man'];
}else{
$aanhef = $config['taal']['aanhef_vrouw'];
}
$config['user']['aanhef'] = $aanhef;
$config['user']['voornaam'] = $voornaam;
$config['user']['tussenvoegsel'] = $tussenvoegsel;
$config['user']['achternaam'] = $achternaam;
$config['user']['bedrijfsnaam'] = $bedrijfsnaam;
$status = "open";
$ip = "0000";
$verwijderd = "nee";
$source = "file_import";
$voornaam = checkData($voornaam);
$tussenvoegsel = checkData($tussenvoegsel);
$achternaam = checkData($achternaam);
$geslacht = checkData($geslacht);
$geboortedatum = checkData($geboortedatum);
$emailadres = checkData($emailadres);
$bedrijfsnaam = checkData($bedrijfsnaam);
$telefoonnummer = checkData($telefoonnummer);
$taal = checkData($taal);
$categorie_a = checkData($categorie_a);
$categorie_b = checkData($categorie_b);
$hash_combi = $emailadres . $code;
$hash = md5($hash_combi);
$q_account = sprintf("INSERT INTO kes_emailadressen (voornaam, tussenvoegsel, achternaam, geslacht, bedrijfsnaam, telefoonnummer, geboortedatum, emailadres, code, client_code, geactiveerd, status, taal, categorie_a, categorie_b, datum_in, tijd_in, verwijderd, source, ip, hash) VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')",
$voornaam,
$tussenvoegsel,
$achternaam,
$geslacht,
$bedrijfsnaam,
$telefoonnummer,
$geboortedatum,
$emailadres,
$code,
$code_client,
$geactiveerd,
$status,
$taal,
$categorie_a,
$categorie_b,
$datum,
$tijd,
$verwijderd,
$source,
$ip,
$hash);
$r_account = mysql_query($q_account);
if($activatie_mail_sturen){
$config['user']['link'] = $config['kes']['website']."index.php?p=activeren&h=".$hash."&lang=".$taal_afkorting;
include_once("../config/vars_".$taal_afkorting.".php");
require_once '../phpmailer/class.phpmailer.php';
$bericht = "\n
<body style=\"margin: 10px; background-color:#".$config['klant']['kleur_backgr'].";\">
<style>
a{
color:#".$config['klant']['kleur_links'].";
text-decoration:".$config['klant']['opmaak_links'].";
}
</style>
<div style=\"color:#".$config['klant']['kleur_tekst']."; font-family:Verdana,Geneva,sans-serif; font-size:".$config['klant']['font_grootte']."px; line-height:18px; padding-bottom:23px; width: 480px;\">
<br>
<br>
".$config['klant']['email_aanhef']."<br><br>
".$config['taal']['email_importeren']."
".$config['klant']['naam']."<br><br>
".$config['klant']['email_logo']."
".$config['taal']['email_importeren_ps']."
</div>
</body>";
$send_message = false;
if($r_account){
if(empty($tussenvoegsel)){
$naam = $voornaam." ".$achternaam;
}else{
$naam = $voornaam." ".$tussenvoegsel." ".$achternaam;
}
$mail = new PHPMailer(true); //defaults to using php "mail()"; the true param means it will throw exceptions on errors, which we need to catch
try {
$mail->AddReplyTo($config['klant']['emailadres'], $config['klant']['naam']);
$mail->AddAddress($emailadres, $naam);
$mail->SetFrom($config['klant']['emailadres'], $config['klant']['naam']);
$mail->AddReplyTo($config['klant']['emailadres'], $config['klant']['naam']);
$mail->Subject = $config['taal']['onderwerp_importeren'];
$mail->MsgHTML($bericht);
if($config['klant']['logo_aanwezig'] == "ja"){
$mail->AddAttachment($_SERVER['DOCUMENT_ROOT']."/img/logo.gif", "logo.gif"); // attachment
}
$mail->Send();
$send_message = true;
} catch (phpmailerException $e) {
$send_message = false;
echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
$send_message = false;
echo $e->getMessage(); //Boring error messages from anything else!
}
}
}
}?>
<?php
$error = false;
if($al_geregistreerd || !$valid_voornaam || !$valid_tussenvoegsel || !$valid_achternaam || !$valid_geslacht || !$valid_bedrijfsnaam || !$valid_telefoonnummer || !$valid_taal || !$valid_categorie_a || !$valid_categorie_b || (!$valid_emailadres && !$al_geregistreerd) || $geboortedatum_reparatie || ($activatie_mail_sturen && !$send_message)){
$error = true;
}
?>
<?php if(!empty($row['emailadres'])){?>
<tr <?php if($kleur && $error){ echo("style=\"background-color:#e6e8eb; color:#F00;\""); } else if ($kleur && !$error){echo("style=\"background-color:#e6e8eb;\""); } else if (!$kleur && !$error){echo("style=\"\""); } else if(!$kleur && $error){ echo("style=\"color:#F00;\""); }?> >
<td><?php echo( $counter ); ?></td>
<td><?php echo( utf8_decode($row['voornaam'] )); ?></td>
<td><?php echo( utf8_decode($row['tussenvoegsel'] )); ?></td>
<td><?php echo( utf8_decode($row['achternaam'] )); ?></td>
<td><?php echo( $row['geslacht'] ); ?></td>
<td><?php echo( $row['emailadres'] ); ?></td>
<td><?php echo( $geboortedatum_view ); ?></td>
<td><?php echo( utf8_decode($row['bedrijfsnaam'] )); ?></td>
<td><?php echo( $row['telefoonnummer'] ); ?></td>
<td><?php echo( $row['taal'] ); ?></td>
<td><?php echo( $row['categorie_a'] ); ?></td>
<td><?php echo( $row['categorie_b'] ); ?></td>
<td><?php
if($al_geregistreerd){ echo("E-mailadres was al geregistreerd. <br />"); }
if(!$valid_voornaam){ echo("Opgegeven voornaam is ongeledig. <br />"); }
if(!$valid_tussenvoegsel){ echo("Opgegeven tussenvoegsel is ongeledig. <br />"); }
if(!$valid_achternaam){ echo("Opgegeven achternaam is ongeledig. <br />"); }
if(!$valid_geslacht){ echo("Opgegeven geslacht is ongeledig. <br />"); }
if(!$valid_emailadres && !$al_geregistreerd){ echo("Opgegeven e-mailadres is ongeledig. <br />"); }
if($geboortedatum_reparatie){ echo("Geboortedatum was onjuist en is nu verwijderd. <br />"); }
if(!$valid_bedrijfsnaam){ echo("Opgegeven bedrijfsnaam is te lang. <br />"); }
if(!$valid_telefoonnummer){ echo("Opgegeven telefoonnummmer is ongeledig. <br />"); }
if(!$valid_taal){ echo("Opgegeven taal is ongeledig. <br />"); }
if(!$valid_categorie_a){ echo("Opgegeven categorie A is te lang. <br />"); }
if(!$valid_categorie_b){ echo("Opgegeven categorie B is te lang. <br />"); }
if($activatie_mail_sturen && !$send_message){ echo("<strong>Bevestigingse-mail is niet verstuurd.</strong>"); }
?></td>
</tr>
<?php }
}?>
</table>