PDA

View Full Version : مبتدی: حذف ایمیلهای تست شده از کل ایمیلها



neda.salehi
پنج شنبه 06 بهمن 1390, 15:37 عصر
سلام خدمت دوستان و اساتید محترم برنامه نویس
من یه اسکریپت میخواستم که مثلا داخل یه (A)text box بتونم کل ایمیل ها (مثلا 10000 ایمیل) رو وارد کنم بعد از اون میخواستم تو هموم page یه text box (B) دیگه باشه که لیست (1000 ایمیل) رو وارد کنم.
حالا میخواستم ایمیل هایی که تو تکست باکس B وارد کردم رو از لیست ایمیل هایی که توی تکست باکس A وارد کردم حذف کنه و خروجی رو چاپ کنه
میشه خواهش کنم کد php رو از استاتید عزیز برام ارائه کنه؟
میسییییییییییییییییییییی

neda.salehi
پنج شنبه 06 بهمن 1390, 15:49 عصر
پیلیززززززز یکی از اساتید کمک کنههههههه:(

soroush.r70
پنج شنبه 06 بهمن 1390, 16:00 عصر
منظورتون ایمیل های تکراری اگه داخل A بود از B حذف کنه

1000===>A
1000===>B

تکراری ها حذف و نمایش

آیا منظور شما این بود

neda.salehi
پنج شنبه 06 بهمن 1390, 16:07 عصر
ممنون سروش جان که جواب دادی
نه
من میخوام
تکست باکس A = مجموع همه ایمیل هام باشه
تسکت باکس B = ایمیل هایی باشه که چک کردم این ایمیل ها غیر واقعی ان و برگشت خوردن
یعنی می خوام ایمیل های B از ایمیل های A کم (حذف بشه)
نمیدونم تونستم منظورم رو برسونم ؟
میسیییی

neda.salehi
شنبه 08 بهمن 1390, 01:41 صبح
خواهش میکنم یکی خب کمک کنههههه

MMSHFE
شنبه 08 بهمن 1390, 08:38 صبح
<!doctype html>
<html>
<head>
<title>E-Mail</title>
<meta charset="utf-8"/>
</head>
<body>
<?php
$flag = false;
if(isset($_POST['submitted'])) {
$flag = true;
$vars = array('txtA', 'txtB');
foreach($vars as $var) {
if(!isset($_POST[$var]) || $_POST[$var] == '') {
$flag = false;
}
}
if($flag) {
$txtA = explode('<br />', nl2br(trim($_POST['txtA'])));
$txtB = explode('<br />', nl2br(trim($_POST['txtB'])));
foreach($txtA as $a) {
$a = trim($a);
if(!in_array($a, $txtB)) {
echo $a.'<br/>'."\n";
}
}
echo '<br/><a href="">Back</a><br/>'."\n";
}
}
if(!$flag) {
echo '<form action="" method="post">'."\n";
echo '<label for="txtA">Textbox A : </label><br/><textarea id="txtA" name="txtA"></textarea><br/>'."\n";
echo '<label for="txtB">Textbox B : </label><br/><textarea id="txtB" name="txtB"></textarea><br/>'."\n";
echo '<input name="submitted" type="submit" value="Calculate"/>'."\n";
echo '</form>'."\n";
}
?>
</body>
</html>

اگه سؤالی بود در خدمتم. موفق باشید.

neda.salehi
سه شنبه 18 بهمن 1390, 16:14 عصر
سلام
این کدی که شما دادین رو من رو هاستم آپ کردم اما عمل نکرد و هیچ ایمیلی حذف نشد.
حالا اگه نوشتن این کد خیلی سخته آیا راهی هست که بشه به جای اینکه یک کلمه رو find و replace کرد به جاش 1000 تا کلمه یا جمله رو finde کرد و به جاش کارکتر Space رو ریپلیس کرد؟؟؟
ممنون میشم یکی کمک کنهههههههه
می سییییییییی

neda.salehi
سه شنبه 18 بهمن 1390, 16:15 عصر
منظور من از اینکه کارکتر Space رو Relpace کرد اینه که اون آدرس ایمیل که جستجو شده رو به جاش جای خالی بذاره یا در اصل حذفــــــــــــــــــــــ ــــ کنه!!!

MMSHFE
سه شنبه 18 بهمن 1390, 16:51 عصر
من این کد رو تست کردم. کاملاً کار میکنه. شما باید توی کادر متن اول، همه ایمیلها رو بنویسید و با Enter از هم جدا کنید. توی کادر متن دوم هم همین کار رو برای ایمیلهایی که غیر واقعی هستند انجام بدین. بعد از ارسال فرم، به شما ایمیلهایی که چک نشدن اعلام خواهد شد. البته من روی ویندوز تست کردم ولی بعید میدونم روی لینوکس تفاوت خاصی داشته باشه. با این حال اگه سرورتون لینوکس هست، روی لوکال امتحان کنید ببینید مشکل رفع میشه یا نه و اگه متوجه شدین مشکل بخاطر لینوکس بودن سرور هست، بفرمایید تا کد رو برای لینوکس تغییر بدم. موفق باشید.

neda.salehi
سه شنبه 18 بهمن 1390, 17:53 عصر
بله متوجه هستم اما کار نمیکنه و خروجیش همون لیست A هست ؟!!

MMSHFE
سه شنبه 18 بهمن 1390, 18:24 عصر
روی لوکال و توی سیستم عامل ویندوز هم تست کردین؟ این تصاویر تستی هست که من انجام دادم:
82188
82187
موفق باشید.

MMSHFE
سه شنبه 18 بهمن 1390, 19:18 عصر
لطفاً برای تاپیکهایی هم که ایجاد میکنید، عنوان مناسب انتخاب کنید. عنوان تاپیک شما ویرایش شد. موفق باشید.