prototype_model_featureimg

What is Prototype Model in Hindi? प्रोटोटाइप मॉडल क्या होता है?

हेलो दोस्तों, आज के ब्लॉग में मै आपको प्रोटोटाइप मॉडल(Prototype Model) के बारे में बताने वाला हूँ जिसका उपयोग हम सॉफ्टवेयर को बनाने में करते है| और हम कह सकते है की यह सॉफ्टवेयर को निर्मित करने की क्रमबद्ध प्रक्रिया है|

प्रोटोटाइप मॉडल (Prototype Model) एक ट्रायल सॉफ्टवेयर होता है, जिसे कस्टमर को बनने वाले फाइनल सॉफ्टवेयर का आईडिया देने के लिए बनाया जाता है| इस प्रोटोटाइप मॉडल वाले सॉफ्टवेयर में कई खामिया और कमिया हो सकती है जिसे बाद में फाइनल सॉफ्टवेयर में सही कर लिया जाता है|

तो ये प्रोटोटाइप मॉडल (Prototype Model) एक टेस्टिंग सॉफ्टवेयर कि तरह होता है जिसे कम जानकारी के साथ भी डेवेलोप किया जा सकता है| ज्यादातर इन तीन परिस्थिति में इस प्रोटोटाइप मॉडल का उपयोग किया जाता है|

जब हमें सॉफ्टवेयर बनाने का उदेस्य पता हो पर हमें उसके टेक्निकल समस्या के बारे में ज्यादा जानकारी न हो तब हम प्रोटोटाइप मॉडल (Prototype Model) का यूज करते है|

कुछ परिस्थिति ऐसी भी होती है जहा पर सिस्टम बनाने के लिए हमें हार्डवेयर के रिस्पांस टाइम कि जरुरत होती है, तब ऐसी सिचुएशन में पहले हम प्रोटोटाइप मॉडल (Prototype Model) बनाते है|

सॉफ्टवेयर को बनाने के समय कुछ सिस्टम और सॉफ्टवेयर ऐसी होते है जिसमे हम पहली ही बार में करेक्ट सॉफ्टवेयर सिस्टम नहीं बना सकते, या फिर ऐसी सॉफ्टवेयर सिस्टम जहा यूजर कि इनफार्मेशन और रेक्विरेमेंट पहली बार में कम्पलीट नहीं होती, इन दोनों ही परिस्थिति में हम प्रोटोटाइप मॉडल (Prototype Model) का उसे करते है.

प्रोटोटाइप मॉडल (Prototype Model) में सबसे पहले जानकारी एकत्रित कर ली जाती है, जो की सॉफ्टवेयर को बनाने व उससे सम्बंधित होती है|

इस प्रोसेस में डेवलपर व कस्टमर मिल के डिसाइड करते है कि इस सॉफ्टवेयर को बनाने का उदेस्य क्या है| और इस हिसाब से वो सभी क्षेत्र में विस्तृत रूप से डिसकस करते है, और पता लगाते है कि अभी किस क्षेत्र में और जानकारी जुटाने कि जरुरत है|

और जब जानकारी जुटाने का काम ख़तम हो जाता है तब शीघ्र ही एक डिज़ाइन तैयार किया जाता है, और इस डिज़ाइन में बताया जाता है कि यूजर को इनपुट और आउटपुट विंडो में क्या दिखाई देगा|

prototype_model_content
PROTOTYPE MODEL

प्रोटोटाइप मॉडल (Prototype Model) के इस डिज़ाइन को यूजर और कस्टमर परखते है और उसकी जरुरत को और बेहतर बनाने के लिए या उसमे कुछ और जरुरी सुधार करने के लिए| यह एक हिसाब से कस्टमर की सभी जरूरतों को पूर्ण रूप से संतुस्ट करने का मॉडल है जो कि वह अपने सॉफ्टवेयर में चाहता है | इसलिए यह मॉडल सॉफ्टवेयर रेक्विरेमेंट कि दृष्टि से बहुत ही महत्वपूर्ण है|

जब एक वर्किंग प्रोटोटाइप मॉडल (Prototype Model) बना लिया जाता है तब डेवलपर प्रोटोटाइप को अलग कर देता है व फेक देता है, पहले से मौजूद प्रोग्राम जनरेटर कि मदद से|

मैथमेटिकल अल्गोरिथम कि कुछ क्लासेज, सबसेट ऑफ़ कमांड ड्रिवेन सिस्टम, और कुछ और एप्लीकेशन जहा पर रिजल्ट बड़े आराम से पता लगे जा सकता है, बिना किसी वास्तविक इंटरैक्शन के, को प्रोटोटाइप मॉडल (Prototype Model) के द्वारा आराम से बनाया जा सकता है|

प्रोटोटाइप मॉडल (Prototype Model) कि जरुरत कब पड़ती है?

ऐसी एप्लीकेशन जिनका प्रोटोटाइप बहुत ही आसान है और जो हमेशा अपने अंदर ह्यूमन मशीन इंटरैक्शन समाहित रखती है को बनाने के लिए प्रोटोटाइप मॉडल (Prototype Model) सजेस्ट किया जाता है|

जब हमें सॉफ्टवेयर बनाने का केवल जनरल उदेस्य पता होता है, लेकिन हमें इनपुट , प्रोसेसिंग एंड आउटपुट के बारे में डिटेल में कुछ पता नहीं होता| तो फिर ऐसी सिचुएशन में हम प्रोटोटाइप मॉडल (Prototype Model) उसे करते है|

जब सॉफ्टवेयर डेवलपर किसी अलगोरिथम की क्षमता के बारे में व किसी ऑपरेटिंग सिस्टम की अडाप्टेबिलिटी के बारे में ज्यादा आश्वश्त नहीं होता, तब इस सिचुएशन में प्रोटोटाइप मॉडल (Prototype Model) को उसे करना एक बेहतर विकल्प हो सकता है|

ड्रॉबैक्स ऑफ़ प्रोटोटाइप मॉडल : Drawbacks of Prototype Model

जब प्रोटोटाइप मॉडल (Prototype Model) का फर्स्ट वर्जन बनकर तैयार होता है तब कस्टमर खुद अक्सर इसमें छोटे मोठे फिक्स व चेंज चाहते है बजाये कि सिस्टम को फिर से बनाया जाये| जबकि अगर सिस्टम को फिर से डिज़ाइन किया जाये तो उसमे और ज्यादा क्वालिटी मेन्टेन होगी|

प्रोटोटाइप मॉडल (Prototype Model) के फर्स्ट वर्जन में बहुत सरे कोम्प्रोमाईज़ करने पढ़ सकते है|

कभी कभी सॉफ्टवेयर डेवलपर अपने क्रियान्वन में कोम्प्रोमाईज़ कर सकता है, प्रोटोटाइप मॉडल को जल्दी चलाने के लिए, और कुछ समय के बाद वो ऎसे कोम्प्रोमाईज़ करने में सहज और कम्फर्टेबले हो सकता है और वो भूल सकता है कि ऐसा करना बिलकुल अनुचित है|

इस प्रोटोटाइप मॉडल (Prototype Model) ब्लॉग को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते a5theorys@gmail.com पर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस प्रोटोटाइप मॉडल (Prototype Model) पोस्ट को खूब एन्जॉय किया होगा|

आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|

आपका समय शुभ हो|

waterfallfeature

Waterfall model in Hindi: वॉटरफॉल मॉडल हिंदी में, Advantages & Disadvantages

दोस्तों इस ब्लॉग में मै आपको waterfall model के बारे में बताने वाला हूँ, जिसका अध्यन शायद आपने सॉफ्टवेयर इंजीनियरिंग में किया होगा या कर रहे होंगे |
waterfall model सॉफ्टवेयर को बनाने की प्रक्रिया का एक प्रकार है! इसे linear sequential मॉडल अथवा क्लासिक लाइफ साइकिल(Classic life cycle model) मॉडल भी कहा जाता है!

जैसा की आप निचे दिए हुए चित्र में देख सकते है कि वाटर फल मॉडल(waterfall model) कि शुरुआत सॉफ्टवेयर बनाने की जरूरतों को एकत्रित करने(Requirement gathering) से होती है! और फिर अगले चरण में ये प्रक्रिया analysis, designing, coding, testing and maintenance phase से होकर गुजरती है!

waterfall model featureimg
Waterfall Model

Requirement gathering and Analysis

Requirement gathering and Analysis फेज waterfall model का बहुत ही महत्वपूर्ण होता है क्योकि यह एक सॉफ्टवेयर को बनाने की प्रक्रिया का पहला पार्ट होता है, और अगर यहाँ पर कोई गलती की जाती है तो वो पुरे सॉफ्टवेयर को खराब कर सकती है! इस फेज में सॉफ्टवेयर इंजीनियर द्वारा सॉफ्टवेयर से सम्बंधित सारी जानकारी एकत्रित की जाती है!

जैसे की सॉफ्टवेयर बनाने का उद्देस्य क्या है, उसके क्या क्या फंक्शन होंगे और वह कैसा बेहेवियर करेगा, इन सभी जानकारियों को एकत्रित करके एक डॉक्यूमेंट में समाहित किया जाता है! और इसके बाद कस्टमर के साथ कई डिसकसशन किये जाते है उनकी समीछा लेने के लिए. और जब कस्टमर और सॉफ्टवेयर इंजीनियर Requirement gathering and analysis से संतुस्ट हो जाते है तब एनालिस्ट(सॉफ्टवेयर इंजीनियर) अपने अगले चरण की ओर अग्रसर होता है!

Suppose that आपको लाइब्रेरी सिस्टम पर एक प्रोजेक्ट बनाना है, तब आप सबसे पहले लाइब्रेरी जाकर इनफार्मेशन कलेक्ट करंगे जैसे कि वह पर सिस्टम कैसे चलता है| आप निम्नलिखित बिन्दुओ पर इनफार्मेशन कलेक्ट कर सकते है|

लाइब्रेरी में बुक्स का मैनेजमेंट कैसे होता है, मतलब अलग अलग सेमेस्टर की सब्जेक्ट वाइज बुक कैसे राखी जाती है, जिससे की उन्हें आसानी से ढूंढा जा सके |

स्टूडेंट का रिकार्ड्स कैसे मेन्टेन होता है?

लाइब्रेरी बुक्स पर फाइन कैसे लगता है और कितना लगता है और कब कब लगता है?

ये सब Request gathering का हिस्सा होता है | और इसके बाद आप और आपकी टीम इस पर बैठ कर एनालिसिस(analysis) करते है और अपने अपने सुझाव प्रका करते है | This was all about the first model of waterfall model.

Design

सॉफ्टवेयर मेकिंग की प्रक्रिया में or in waterfall model, अगला स्टेप डिजाइनिंग(Design) का होता है! यह रेक्विरेमेंट एकत्रित करने और कोडिंग करने के बीच का स्टेप है!
डिज़ाइन की प्रक्रिया निम्नलिखित बिन्दुओ पर निर्भर करती है!]

डाटा स्ट्रक्चर (Data Structure)
सॉफ्टवेयर आर्किटेक्चर (Software Architecture)
इंटरफ़ेस रिप्रजेंटेशन (Interface Representation)
अल्गोरिथम डिटेल्स (Algorithm details)

पहले चरण(Of waterfall model)) में एकत्रित की गयी जानकारी को कई छोटे छोटे मॉडल में कन्वर्ट करना पड़ता है जिससे की हम उसकी आसानी से कोडिंग कर सके! हम इस डिज़ाइन को डॉक्यूमेंट में उतार लेते है जिससे की कोडिंग करते टाइम हम इसे आसानी से समझ पाए!

डिज़ाइन फेज में हम मुख्य रूप से दो मॉडल पर काम करते है एक तो बैकेंड और डेटाबेस एंड फ्रंट-एन्ड डिज़ाइन और जी यू आई(GUI) डिज़ाइन, बैकेंड डिज़ाइन में हम फिक्स करते है की कितनी टेबल बनेगी एंड वो एक दूसरे से कैसे रेलेट होंगी और फ्रंट-एन्ड में हम तय करते है की कितने पेज होंगे और उन पर कंटेंट कैसे होगा मेनू कैसे होगा |

Coding

डिज़ाइन फेज के बाद अगला चरण(In waterfall Model) कोडिंग का आता है जो की बहुत ही महत्वपूर्ण चरण है! यहाँ पर सॉफ्टवेयर इंजीनियर द्वारा और डेवलपर द्वारा इसके पहले चरण में डिज़ाइन की गयी चीज़ो को मशीन रेडबले लैंग्वेज में कन्वर्ट किया जाता है! अगर हमारी डिज़ाइन अच्छी तरह की गयी होती है तो फिर कोडिंग बहुत ही इफेक्टिव होती है! इस फेज में प्रोग्राम बांये जाते है जिसे हम सॉफ्टवेयर प्रोग्राम कहते है जो की एक खास प्रक्रिया को पूरा करते है!

Testing

कोडिंग(Coding) के बाद जो अगला फेज होता है है वो होता है टेस्टिंग(Testing) का(In waterfall model), इस फेज में हम पिछले स्टेप में बनाये गए प्रोग्रम को टेस्ट करते है कि वो सही तरह से काम कर रहा है कि नहीं! टेस्टिंग करने का मेन फोकस उसकी लॉजिकल फंक्शनिंग चेक करना होता है! ताकि हम चेक कर सके कि जिस काम के लिए सॉफ्टवेयर को बनाया गया है वो काम सही से कर रहा है कि नहीं! For example- हमने एक सॉफ्टवेयर बनाया जो कि दो नंबर को जोड़ता है है और फिर उसका रिजल्ट हमें स्क्रीन पर दिखाता है! मतलब अगर यूजर कोई दो नंबर एंटर करता है तो उसका सम स्क्रीन पर आउटपुट के तौर पर दिखता है! अब अगर प्रोग्राम में कुछ गड़बड़ होगी तो ये जोड़ सही नहीं करेगा!

तो कहने का मतलब यह है कि टेस्टिंग फेज में सभी प्रकार कि प्रॉब्लमस त्रुटि जो कि प्रोग्राम में होती है वो सभी पहले खोजी जाती है बार बार प्रोग्राम को चला कर, और बाद में जब कोई त्रुटि मिल जाती है तो उसे सही किया जाता है! टेस्टिंग फेज में प्रोग्रम के सभी फंक्शन और पैरामीटर, बेहेवियर को चेक किया जाता है कि वो ठीक से काम कर रहे है कि नहीं!

Maintenance:

मेंटेनेंस(In waterfall model) एक लम्बी और सतत चलने वाली प्रक्रिया है, जब तक सॉफ्टवेयर चलता है तब तक यह प्रक्रिया भी चलती रहती है! मेंटेनेंस के अंतर्गत या तो सॉफ्टवेयर में आने वाली त्रुटि और दिक्कत को सही किया जाता है या फिर लोगो कि जरूरतों के अनुसार जानकारी लेकर सॉफ्टवेयर को अपडेट अथवा एनहान्स किया जाता है! यूजर कि रेक्विरेमेंट लेकर सॉफ्टवेयर में नए फंक्शन जोड़े जाते है!

वाटर फॉल(waterfall model) सॉफ्टवेयर बिल्डिंग तकनीक का इस्तेमाल बड़े तौर पर होता है | जबकि इस मॉडल में कुछ कमिया ड्रॉबैक्स और बेनिफिट है |

बेनिफिट ऑफ़ वॉटरफॉल मॉडल(Benefits of waterfall model):-

वाटर फॉल मॉडल(waterfall model) का क्रियान्वन करना बहुत सरल है |

वाटर फॉल मॉडल(waterfall model) छोटे सॉफ्टवेयर और सिस्टम बनाने के लिए उपर्युक्त है|

ड्रॉबैक्स ऑफ़ वाटर फॉल मॉडल(Drawbacks of waterfall model):-


सॉफ्टवेयर डेवलपमेंट प्रोसेस में(In waterfall model) ये प्रोग्राम बनाने का ये क्रमबध फ्लो बहुत ही कठिन है | क्योकि अगर हमें किसी भी फेज में कोई चेंज करना पड़ता है तो फिर बहुत कन्फूशन हो सकता है|

जानकारी को एकत्रित करना पहले फेज में होता है , पर कभी कभी यह पॉसिबल नहीं होता कि हमें सारी जानकारी सुरु में ही मिल जाये | इस कारन से प्रोजेक्ट में दिक्कत आ जाती है!

सॉफ्टवेयर का वर्किंग मॉडल और फाइनल मॉडल कस्टमर को सबसे लास्ट में देखने मिलता है| अगर इस स्टेज पे कस्टमर इस सॉफ्टवेयर से संतुस्ट नहीं होता है तब यह एक गंभीर समस्या हो जाती है|

वाटर फॉल मॉडल(Waterfall Model) का Linear नेचर होने के कारन इसमें बहुत सारी ब्लॉकिंग स्टेट होती है, क्योकि कुछ टास्क पहले वाली टास्क पर निर्भर हो सकती है | ऐसे में ये जरुरी हो जाता है कि हम ऐसे डिपेंडेंट टास्क को पहले एक्सेक्यूटे करे| कभी कभी यह लम्बे इंतज़ार का कारन बन सकता है|

इस वॉटरफॉल ब्लॉग(waterfall model) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते a5theorys@gmail.com पर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस वॉटरफॉल मॉडल(waterfall model) पोस्ट को खूब एन्जॉय किया होगा|

आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|

आपका समय शुभ हो|

emailcleanercodefeatureimg

Domain-Based Email Verification in CSV File using PHP.

Hello Friends, In this blog post I am going to let you know to build an email verification functionality based on domain address inside your email CSV file. I make it more simple, suppose you have an email CSV file which has bulk email addresses and having multiple domain addresses for email.

Now the problem is that you have email addresses with domain extension say ABC.com, and you don’t want to keep any email address with this particular domain name and want to delete all of them,

so now the question is how would you delete them for email verification?

Though there could be some other way to remove as such domain from your excel file for email verification, in case if you don’t know the way or you not familiar with the more technical thing then you would need to have a tool which can do this work for you.

You can use this below-given a tool for email verification process where you just need to upload your list and select the domain which you want to remove or keep and if the domain you want to delete is not in the drop-down list then you can also manually add or delete the domain the below-given option.

csv-email-cleaner-softwrae-img
Email Verification Domain Specific

*Note – Domain add and delete functionality is disabled in the live demo. If if you have any query related with live demo then please contact us here.

So using this tool email verification can happen both ways, you can remove the domain you want and you can also keep the domain you want, means you can select the emails with a specific domain name and also can delete the email with a specific name.

What is the process to make this email verification tool?

This is a very simple process to build this email verification tool, you just need to follow the below-given procedure.

1. Install all the applications to develop this functionality.

Software required to develop this functionality are :

NetBeans IDE
Xampp Server

2. Now create a project name as excel_cleaner, though you can create with any name and then create the below-given file structure.

project-detailexcelcleaner

Once the project creation is done with all file and folder then just copy and paste the below-given code for email verification tool.

index.php


[php]

<?php
session_start();
ini_set(“display_errors”, 0);
?>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=windows-1252″>
<link href=”style.css” rel=”stylesheet” type=”text/css”/>
<link href=”bootstrap/css/bootstrap.css” rel=”stylesheet” type=”text/css”/>
<link href=”bootstrap/css/bootstrap-theme.min.css” rel=”stylesheet” type=”text/css”/>
<title>Remove Email With Domain From Excel</title>
</head>
<body>
<div class=”container”>
<div class=”row”>
<h1 class=”main_heading”>Remove Email With Domain From Excel</h1>
<div id=”main”>
<div id=”login”>
<h2>Email Domain Remover</h2>
<hr>
<div id=”right”>
<div id =”form1″ >

<form action=”<?php echo $_SERVER[“PHP_SELF”]; ?>” method=”post” enctype=”multipart/form-data”>
<?php
$server = “localhost”;
$username = “root”;
$password = “”;
$link = @mysql_connect($server, $username, $password) or die(“Cannot connect to mysql server: ” . @mysql_error());
$dbname = ‘test’;
@mysql_select_db($dbname, $link) or die(“Cannot connect to database: ” . @mysql_error());

$query = “SELECT id,domainname from domain”;
$result = @mysql_query($query);
echo “<select name=’dname’ value=’domain’>”;
while ($drop = @mysql_fetch_array($result)) {
echo “<option value=$drop[domainname]>$drop[domainname]</option>”;
}
echo “</select>”;
?>
<label><b>Upload CSV :</b></label>
<label><input type=”file” name=”file” id=”file” /></label>
<input type=”submit” name=”csubmit” id=”csubmit” value=”submit”/>
</form>
<form action=”#” method=”get” id=”registerform”>
<input type=”text” name=”username” placeholder=”Domainname”></input><br/>

<input type=”submit” name=”submit” value=”Add”></input>
<input type=”submit” name=”deletercd” value=”Delete”></input>
</form>
</div>
<div style=”text-align: center;”><a href=””>For exporting more email please click here..</a> </div>
</div>
</div>
</div>
<div id=”csvmailcontent”>

<?php
try {
if (isset($_POST[‘csubmit’])) {

$sample3 = $_POST[‘dname’];
$sample1 = ‘abc’;
$sample2 = ‘@’;

$input = $sample1 . $sample2 . $sample3;
// echo $input;

if (isset($_FILES[“file”])) {
//if there was an error uploading the file
if ($_FILES[“file”] [“error”] > 0) {
echo “<script type=’text/javascript’>alert(‘Please choose File for upload’)</script>”;
} else {
$storagename = $_FILES[“file”][“name”];
$_SESSION[‘file_name’] = $storagename;
$id = $_SESSION[‘file_name’];
$row = 1;
move_uploaded_file($_FILES[“file”][“tmp_name”], “upload/” . $storagename);
$file = new SplFileObject(“upload/” . $storagename);
$file->setFlags(SplFileObject::READ_CSV);
$file->setCsvControl(‘,’, ‘”‘, ‘\\’); // this is the default anyway though
foreach ($file as $value) {
foreach ($value as $row) {
$arcsv[] = $row;
}
}
$arcsv = array_unique($arcsv);
$_SESSION[‘csv_value’] = $arcsv;
if (empty($arcsv)) {
$arcsv = $_SESSION[‘csv_value’];
}
$countarcsv = count($arcsv);
if($countarcsv >20){
echo (“<script LANGUAGE=’JavaScript’>
window.alert(‘You exceed the one time limit of 20 emails’);
window.location.href=’http://localhost/excel_cleaner/index.php’;
</script>”);
}
/*This will remove all the Gmail.com address*/
if (preg_match(‘/\w+([-+.]\w+)*@(gmail\.com)$/i’, $input)) {
$matches = preg_grep(‘/\w+([-+.]\w+)*@(gmail\.com)$/i’, $arcsv,PREG_GREP_INVERT);
/*This will select all the yahoo addresses*/
// print_r($matches);
} elseif (preg_match(‘/\w+([-+.]\w+)*@(yahoo\.com)$/i’, $input)) {
$matches = preg_grep(‘/\w+([-+.]\w+)*@(yahoo\.com)$/i’, $arcsv);

//print_r($matches);
}

echo”<table id =’tid’>”;
echo”<th>”;
echo”<b>”;
echo”Result Emails”;
echo”</b>”;
echo”</th>”;
foreach ($matches as $key) {
echo”<tr>”;
echo”<td>”;
echo $key . “<br/>”;
echo”</td>”;
echo”</tr>”;
}
echo”</table>”;
$arcsv1[] = $matches;
$lists1 = json_encode($arcsv1);
}
}
if (!empty($file)) {
echo”<form action=’csvdown.php’ method=’post’ >
<input type=’hidden’ name=’lists1′ value=’$lists1′ />
<button type=’submit’ value=’Export CSV’ id =’csvsubmit’><u>Export CSV<u></button>
</form>”;
}
}
} catch (MyException $e) {
echo “Some thing went wrong”;
}
?>
<?php
if (isset($_GET[‘submit’])) {
$con = mysql_connect(“localhost”, “root”, “”);
//Selecting Database
$db = mysql_select_db(“test”, $con);

$username = $_GET[‘username’];

if($username==””)
{
echo”Please fill all the fields”;
}
else{

$query=mysql_query(“insert into domain (domainname) values (‘$username’)”);
if($query){
echo (“<script LANGUAGE=’JavaScript’>
window.alert(‘Your domain has been added successfully’);
window.location.href=’http://localhost/excel_cleaner/index.php’;
</script>”);}

mysql_close($con); // Closing the connection
}

}

if (isset($_GET[‘deletercd’])) {
$con = mysql_connect(“localhost”, “root”, “”);
//Selecting Database
$db = mysql_select_db(“test”, $con);

$username = $_GET[‘username’];

if($username==””)
{
echo”Please fill all the fields”;
}
else{

$query=mysql_query(“DELETE from domain where domainname = ‘$username'”);
if($query){
echo (“<script LANGUAGE=’JavaScript’>
window.alert(‘Your domain has been deleted successfully’);
window.location.href=’http://localhost/excel_cleaner/index.php’;
</script>”);

}
mysql_close($con); // Closing the connection
}

}
?>

</div>
</div>
</div>
</body>
</html>

[/php]

csvdown.php


[php]

<?php

ini_set(“display_errors”, 0);
?>
<?php
try {
$array2 = json_decode($_POST[‘lists1’]);
foreach ($array2 as $key) {
foreach ($key as $key1) {
$array3[][] = $key1;
}
}
header(“Content-type: text/csv”);
header(“Content-Disposition: attachment; filename=file.csv”);
header(“Pragma: no-cache”);
header(“Expires: 0”);
$data = $array3;
$file = fopen(‘php://output’, ‘w’);
fputcsv($file, array(‘Emails ‘));
foreach ($data as $row) {
fputcsv($file, $row);
}
exit();
} catch (MyException $e) {

echo “Some thing went wrong”;
}
?>

[/php]

Style.css


[css]

@import url(http://fonts.googleapis.com/css?family=Raleway);
#main{
min-width: 350px;
margin: 44px auto;
font-family:raleway;
}
span{
color:red;
}
h1.main_heading {
text-align: center;
}
h2{
background-color: #FEFFED;
text-align:center;
border-radius: 10px 10px 0 0;
margin: -10px -40px;
padding: 15px;
}
hr{
border:0;
border-bottom:1px solid #ccc;
margin: 10px -40px;
margin-bottom: 30px;
}
#login{
border-radius: 10px;
font-family:raleway;
border: 2px solid #ccc;
padding: 10px 40px 33px;
margin-top: 23px;
}
input[type=text],input[type=email]{
width:99.5%;
padding: 10px;

border: 1px solid #ccc;
padding-left: 5px;
font-size: 16px;
font-family:raleway;
}
input[type=submit]{
width: 37%;
background-color:#FFBC00;
color: white;
border: 2px solid #FFCB00;
padding: 4px;
font-size:20px;
cursor:pointer;
border-radius: 5px;
}
#right{
overflow: hidden;
overflow-wrap: break-word;
width: 104%;
border: 1px dashed rgb(215, 215, 215);
box-shadow: 0px 5px 17px 1px #99A3AD, 0px 0px 40px #EEEEEE;
margin-left: -10%;
padding: 20px;
}
#right p{
padding: 20px;
}
form1 {
padding-top: 27px;
width: 248px;
margin: auto;
}
#right h3 {
margin-top: -8px;
text-align: center;
}
#csvmailcontent{
width:60%px;
font-family:raleway;
margin-top: -4%;
}
#mailsubmit{
background:none!important;
border:none;
padding:0!important;
font: inherit;
border-bottom:1px solid #444;
cursor: pointer;
font-size: 150%;
margin-left: 45%;
}
#csvsubmit{
background:none!important;
border:none;
padding:0!important;
font: inherit;
border-bottom:1px solid #444;
cursor: pointer;
font-size: 150%;
margin-left: 45%;
}
#uploadcsv
{
margin-bottom: 5%;
}
#text1{
margin-top: 1%;
margin-bottom: 11px;
}
input#text1 {}
#or{
margin-left: 45%;
font-size: 20px;
font-family:raleway;
margin-top: -50px;
}
#or:hover{
color: #204d74;
z-index: 8;
}
#file{
color:lightblue;
margin-top: 3px;
margin-bottom: 4px;
}
table {
font-family: ‘Raleway’, sans-serif;
color:#666;
font-size:12px;
text-shadow: 1px 1px 0px #fff;
background:#eaebec;
margin:20px;
border:#ccc 1px solid;
font-size: 16px;
-moz-border-radius:3px;
-webkit-border-radius:3px;
border-radius:3px;
-moz-box-shadow: 0 1px 2px #d1d1d1;
-webkit-box-shadow: 0 1px 2px #d1d1d1;
box-shadow: 0 1px 2px #d1d1d1;
margin: 0 auto;
}
table th {
text-align: center;
padding:21px 25px 22px 25px;
border-top:1px solid #fafafa;
border-bottom:1px solid #e0e0e0;

background: #ededed;
background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#ebebeb));
background: -moz-linear-gradient(top, #ededed, #ebebeb);
}
table th:first-child {
text-indent: center;
padding-left:20px;
}
table tr:first-child th:first-child {
-moz-border-radius-topleft:3px;
-webkit-border-top-left-radius:3px;
border-top-left-radius:3px;
}
table tr:first-child th:last-child {
-moz-border-radius-topright:3px;
-webkit-border-top-right-radius:3px;
border-top-right-radius:3px;
}
table tr {
text-indent: center;
padding-left:20px;
}
table td:first-child {
text-align: center;
padding-left:20px;
border-left: 0;
}
table td {
padding:18px;
border-top: 1px solid #ffffff;
border-bottom:1px solid #e0e0e0;
border-left: 1px solid #e0e0e0;
background: #fafafa;
background: -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(#fafafa));
background: -moz-linear-gradient(top, #fbfbfb, #fafafa);
}
table tr.even td {
background: #f6f6f6;
background: -webkit-gradient(linear, left top, left bottom, from(#f8f8f8), to(#f6f6f6));
background: -moz-linear-gradient(top, #f8f8f8, #f6f6f6);
}
table tr:last-child td:first-child {
-moz-border-radius-bottomleft:3px;
-webkit-border-bottom-left-radius:3px;
border-bottom-left-radius:3px;
}
table tr:last-child td:last-child {
-moz-border-radius-bottomright:3px;
-webkit-border-bottom-right-radius:3px;
border-bottom-right-radius:3px;
}
table tr:hover td {
background: #f2f2f2;
background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#f0f0f0));
background: -moz-linear-gradient(top, #f2f2f2, #f0f0f0);
}
@media only screen and (min-width:768px){
#main {
max-width: 370px;
}
}

[/css]

Once you are done with this process to complete all the file and page then you can run your project for email verification and can test the result.

In the case of any queries, you can write to us at a5theorys@gmail.com we will get back to you ASAP.

Hope! you would have enjoyed this post of email verification tool development.

Please feel free to give your important feedbacks in the comment section below.

Have a great time! Sayonara!

extract-email-address-feature

How to extract email address from a text string inside the CSV file 2019?

Many times you would have needed a tool to extract email address from the bulk text string in your CSV file so that you can use those email addresses for other purpose or for sending the email campaign to those email addresses.

You may often get these types of email file from many sources, for example, if you are using any plugin on your website or blog for collecting the email id then you can get the email id with other additional data like date, time, place in the form of a text string for all the emails present in the excel file. To extract the email address becomes the issue here so that we can use our email addresses efficiently in other stuff.

excelstringdatanew
Sample CSV File

And when collect any email data in an excel file then it is also in the form bulk data grouped with all other information and mail content, So it is a tough task to extract email address from that data. And sometimes you purchase a third party email list then it can be chances that you get messy data or email with other additional information in one single column. You can see the sample CSV picture in the above image.

So if you have this type of CSV file with you then what is the solution to extract email address from CSV file?

You should not worry about this as it is very simple to extract email address from CSV file, you just need to follow a small procedure to rid out of this problem using. above given email extractor tool. As per this procedure, you must make sure your text string data in which email addresses are present should be set in the very first column of the CSV file.

excelreaderdemo
Email Extractor Tool

*Note – Domain add and delete functionality is disabled in the live demo. If if you have any query related with the live demo then please contact us here.

Now you just need to upload your CSV file in the email extractor tool and then click submit and you will get your results on the screen which will show only the email addresses and you will also have an option to download the results in a CSV file with an only email address. See the image for result CSV below along with the export option. You can easily extract email address using this tool.

excelreader-result
Result with the Export option

In the case of any queries, you can write to us at a5theorys@gmail.com we will get back to you ASAP.

Hope! you would have enjoyed this post to extract email address from CSV file.

Please feel free to give your important feedbacks in the comment section below.

Have a great time! Sayonara!

goals-software-engineering

What are the goals of software engineering?

Hello Friends, In this blog post I am going to discuss the goals of software engineering. While developing a software what and all parameter and benchmark should be in mind and what should be the basic features or objectives of software engineering? You can see the below image which can easily explain you the goals of software engineering.

softwareengineering-flowchart

User Satisfaction:

This is the first out of all goals of software engineering and as also the most important goal as all the stuff is for a customer or user so we should be very focused about user satisfaction while developing any software.

A few programmers do this as they start developing the software immediately without understanding the actual requirement of end-user and this result in the improper flow of software which user did not want in actual. So by doing this programmer loses his energy and user faith or user satisfaction and if programmer rebuilds it again then it is an overhead to him to build it again.

High reliability:

this is the second out of all the goals of software engineering. this one tells us that we can not have any scope to have any mistake or bugs in our final product which is going to release at user end. If it will have mistakes and bugs then it can affect our relationship with our customers and thus this can highly impact the selling of our software in the market and can create a high loss percentage.

As Microsoft has also some bugs in the earlier release of windows and users were facing lots of problems. So the software is to be released only if high reliability has been achieved and there is no chance of any bugs.

Low Maintenance Cost:

This is the third one out of all goals of software engineering. Maintenance is a process in which a small problem or bugs which have been detected while using the software at user end are addresses and get fixed easily. But it does not mean the restructuring of software from scratch or start.

I mean to say if there is any problem in software then you have to design it once again. This happens if the software has very poor quality and made without any testing and parameters.

Delivery on time:

This is the fourth goals of software engineering. The delivery time matters while you develop software for your client or customer. As this is not possible to tell the exact time to complete software but if the developing work is to be done in a systematic order by breaking the whole project in parts and with estimating time for each module. By doing this analysis a proposed deadline can be given for completing a project for a client.

Low Production Cost:

As per the low production goals of software engineering software which is cost-effective gets always the attention of users. And if the software is succeeded to match the user requirement there is a big chance of sale or profit in either way.

High Performance:

Software performance is generally measured by its speed and memory consumption so we should develop in such a way that it could be run in minimal memory space with high speed. This optimization of the software will make it useful for users and will have a high demand in the market.

Ease of reuse:

If you are building a small unit of big software then it is very necessary to then we should try to make it in such a way that it can be reused if it is needed in building the same software or in other software too. This will save memory, money, and efforts.

In the case of any queries, you can write to us at a5theorys@gmail.com we will get back to you ASAP.

Hope! you would have enjoyed this post about the goals of software engineering.

Please feel free to give your important feedbacks in the comment section below.

Have a great time! Sayonara!

csvemailcleaner-feature

CSV Email Cleaner: Remove emails of a specific domain

Hello Friends, In this blog, I am going to let you know about CSV email cleaner tool or software. Sometimes did you need to remove some specific email addresses from your email CSV? Make it more simple, say you have millions of emails with different domain extensions like most of them are gmail.com and yahoo.com and any other, etc.

What does this CSV email cleaner actually do? What is the procedure?

You can see the screenshot for the CSV email cleaner software below, here you can select a particular domain which you want to remove or select. Here in the demo of this software, we have included both the functionality for adding and removing the emails of a particular domain extension. In the below demo when you will select the gmail.com then it will remove all the emails with this gmail.com extension and when you will select yahoo.com then it will select all the emails with yahoo.com extension.

csv-email-cleaner-softwrae-img
CSV EMAIL CLEANER

*Note – Domain add and delete functionality is disabled for the live demo.

And now you want to remove all the email having gmail.com domain extension from your email CSV, there could be many reasons behind this as you don’t want to send emails to this domain email or this is fake domain extension which you want to remove from your email CSV file. You can easily remove all emails with this particular domain extension using this CSV email cleaner tool.

csvemailcleaner1
Removal of gmail.com using CSV email cleaner

There may be another case where you have millions of email addresses in your email CSV file with different domain extension and now you just need to select a particular domain extension based emails say you just want to extract yahoo.com emails out of all the emails and export them in an email CSV file. So you can easily select them all with this CSV email cleaner tool.

csvemailcleaner2
Selection of all yahoo.com using CSV email cleaner

The format of the CSV file that you need to upload is given below while using CSV email cleaner. Remember only to upload file in CSV format.

samplecsv

Conclusion:

So this CSV email cleaner is an amazing tool which can filter all your email address based on a particular domain name. you can easily remove and select the emails based on domain extensions in your email CSV file.

In the case of any queries, you can write to us at a5theorys@gmail.com we will get back to you ASAP.

Hope! you would have enjoyed this post about CSV email cleaner.

Please feel free to give your important feedbacks in the comment section below.

Have a great time! Sayonara!

backtracking-in-datastructure

What is backtracking in data structure?

Hello friends, In this, in this blog post I am going to let you know about one more interesting technique name as backtracking to solve the problem in the data structure. Which most of you would have read during your study period or engineering.

Backtracking is very helpful in solving the problems where we have a set of n number of solutions or in other words, ave multiple solutions for solving one particular problem and then we need to find out the optimal solution for solving that problem by satisfying some constraints too which are the part of this problem.

So ultimately under a fixed boundary or predefine constraints we need to find out the best or optimal solution for the particular problem out of all possible solution of that problem.

In many application of the backtracking method, the desired solution is expressible as an n-tuple(x1, x2, ………Xn), where Xi is chosen from some finite set of Si.

Generally, the problem to be solved calls for finding one vector tha maximizes or satisfies or minimizes a certain function P(x1, x2,…..xn). Sometimes it seeks all vectors that satisfy P.

Many of the problems we solve using backtracking require that all the solutions satisfy a complex set of constraints. these constraints are divided into two categories for any problem. They are listed below.

Explicit Constraints:

Explicit constraints are rules that restrict each Xi to take on values only from a given set

Some examples that are common for explicit constraints are

Xi>=0 or Si ={all non negative real numbers}
Xi=0 or 1 or Si ={0, 1}
Li<=Xi<=Ui or Si={a:Li<=a<=Ui}

The explicit constraints depend on the particular instance I of a problem being solved. All tuples that satisfy the explicit constraints define a possible solution space for I

Implicit Constraints:

Implicit constraints are rules that determine which of the tuple in the solution space of I satisfy the criterion function. Hence implicit constraints give the way in which the Xi must relate to each other.

An example that can be solved by the use of backtracking technique are listed below:

  • Sorting the array of integers in a {1:n}
  • 8 -Queens problem
  • 4- Queens problem
  • Sum of subsets problem.

In the case of any queries, you can write to us at a5theorys@gmail.com we will get back to you ASAP.

Hope! you would have enjoyed this post about backtracking technique.

Please feel free to give your important feedbacks in the comment section below.

Have a great time! Sayonara!