小编joh*_*ohn的帖子

如何将多行文本转换为一行?

我正在尝试将生成的密钥生成一行的txt文件.例:

<----- key start ----->
lkdjasdjskdjaskdjasdkj
skdhfjlkdfjlkdsfjsdlfk
kldshfjlsdhjfksdhfksdj
jdhsfkjsdhfksdjfhskdfh
jhdfkjsdhfkjsdhfkjsdhf
<----- key stop ----->
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像:

lkdjasdjskdjaskdjasdkjskdhfjlkdfjlkdsfjsdlfkkldshfjlsdhjfksdhfksdjjdhsfkjsdhfksdjfhskdfhjhdfkjsdhfkjsdhfkjsdhf
Run Code Online (Sandbox Code Playgroud)

注意我也想要行<----- key start -----><----- key stop ----->删除.我怎样才能做到这一点?这会完成sed吗?

bash text-processing sed

13
推荐指数
5
解决办法
3万
查看次数

SELECT然后立即DELETE mysql记录

我有一个运行SELECT查询的PHP脚本,然后立即删除该记录.有多台机器正在ping同一个php文件并从同一个表中获取数据.每台远程计算机都在cron作业上运行.

我的问题是,有时它无法快速删除,因为有些机器在同一时间ping.

我的问题是,我如何从数据库中选择一条记录,并在下一台机器抓取它之前将其删除.现在我只是添加了一个短暂的延迟,但效果并不好.我尝试过使用交易,但我不认为这适用于此.

这是我的脚本的示例片段:

<?php

$query = "SELECT * FROM `queue` LIMIT 1";
$result = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result)){
    $email = $row['email'];
    $campaign_id = $row['campaign'];
}

$queryx = "DELETE FROM `queue` WHERE `email` = '".$email."'";
$resultx = mysql_query($queryx) or die(mysql_error());

?>
Run Code Online (Sandbox Code Playgroud)

真的很感激帮助.

php mysql select transactions sql-delete

11
推荐指数
3
解决办法
1万
查看次数

SwiftMailer 库执行缓慢

我正在尝试将 swiftmailer 实施到这个邮件系统中。我的客户有大约 30 万封活动电子邮件需要半定期发送。该系统最初是为 sendmail 和 php 的 mail() 函数配置的。我已经安装了最新版本的 postfix。

可能是我的期望太高了,但我的印象是这个东西可以快速将大量电子邮件放入队列中,这正是我所需要的。所有的速率处理和节流都是在 postfix 端完成的,所以能够以我的 postfix 设置可以处理的速度将它们排队会很棒。

虽然我可以实现将联系人直接插入队列的方法,但我宁愿根据各种选项(例如 smtp 服务器的全局发送速率)来限制进入队列的电子邮件的输入。

下面的代码只是一些基本的测试。它遍历 30 个单独的邮件 smtp 帐户,每个帐户都有自己的费率属性。我正在尝试从每个 cron 的数据库中提取最大数量的电子邮件,然后发送然后全部使用batchsend(),然后循环到下一个 smtp 帐户,发送最大值等。

从技术上讲它确实有效,但是它真的很慢。以每个 smtp 帐户 60/分钟的速度,每个大约需要 15-20 秒,这显然不起作用,而且完全不是我所期望的。

为什么这会发送这么慢有什么很明显的吗?smtp 服务器似乎很好,没有过载或类似的情况。没有后缀错误,没有什么明显的。

一旦电子邮件进入队列,我就让 postfix 工作,这很神奇。以合理的速度将其放入队列变得困难。我知道 swiftmailer 是解决我所有问题的神奇解决方案,但我确信它的发送速度应该比现在更快。有什么想法或建议吗?

$query = "SELECT * FROM `smtp`";
    $result = mysql_query($query) or die(mysql_error());
    $num_rows1 = mysql_num_rows($result);
    while($row = mysql_fetch_array($result)){
        $smtp = $row['ip'];
        $login = $row['user'];
        $pass = $row['pass'];
        $smtp_domain = $row['domain'];   

    $querya = "SELECT * FROM `mailer_lists` ml …
Run Code Online (Sandbox Code Playgroud)

php email postfix-mta swiftmailer

5
推荐指数
1
解决办法
4153
查看次数

如何在代理后面使用imap_open?

我真的不知道怎么问这个问题,所以我会尽可能地问它。是否可以使用代理连接从使用PHP的pop3或imap服务器读取邮件imap_open

我宁愿使用imap_open它,因为它是如此简单地处理邮件。但是,如果imap_open无法使用,还有哪些其他解决方案?CURL可以fsockopen工作吗?我似乎找不到任何示例显示在PHP中的代理后面与pop3 / imap的连接。

任何建议将非常有帮助!

php proxy curl imap fsockopen

5
推荐指数
0
解决办法
1857
查看次数

3
推荐指数
2
解决办法
5579
查看次数

延迟后关闭fancybox

客户让我用几个视频更新他的静态网站.他希望他们"弹出"并在网站上播放.我爱的fancybox主要是因为我在jQuery和它使得加入灯箱那么简单.我马上安装了它,到目前为止一切都是100%完美.

但是他希望fancybox窗口在剪辑播放后自动关闭.由于只有少数几个视频而且它们非常简短,我只想为每个视频分配时间.我认为最长的是1分30秒,总共5个视频.

我怎么能实现呢?fancybox网站上写着"在iframe中使用 - parent.$.fancybox.close();",但我不知道如何通过jquery的延迟来完成这项工作.任何输入或想法都会很棒.

jquery delay lightbox fancybox

3
推荐指数
1
解决办法
5907
查看次数

onclick创建文本框

这是一个愚蠢的问题,但由于某种原因,我无法弄清楚或在任何地方找到一个简单的例子.我想要的只是一个按钮,当点击它时,创建一个同名的文本框+1.

<input type="button" value="Show" onclick="blah" />
<!-- Button Gets Clicked -->
<input type="text" name="added1" /> 
<!-- Button Gets Clicked -->
<input type="text" name="added2" />
<!-- Button Gets Clicked -->
<input type="text" name="added3" />
Run Code Online (Sandbox Code Playgroud)

也许是javascript!?有任何想法吗?

html javascript onclick

2
推荐指数
1
解决办法
9164
查看次数

如何在PHP中将数字修剪为5位数?

我有这样的数字:

12345678987654321
Run Code Online (Sandbox Code Playgroud)

我想只使用前5位数字:

12345
Run Code Online (Sandbox Code Playgroud)

我怎么用PHP做到这一点?number_format

php trim number-formatting

2
推荐指数
2
解决办法
4632
查看次数

不喜欢多个OR语句?

如果有一个邮件脚本,我已设置为我发送到的域.如果没有设置节流速率的剩余域,则会为其分配默认速率.要找到与现有限制域不匹配的域,我使用这个php:

$query = "SELECT * FROM `mailer_lists` ml JOIN `mailer_controller` mc";
        $query .= " ON ml.project_name = mc.project_name";
        $query .= " WHERE `email` NOT LIKE '%";
        $query .= "" . implode("' OR '%", $throttle_domain) . "'";
        echo "$query";
Run Code Online (Sandbox Code Playgroud)

回声的输出是:

SELECT * FROM `mailer_lists` ml JOIN `mailer_controller` mc ON ml.project_name = mc.project_name WHERE `email` NOT LIKE '%gmail.com' OR '%hotmail.com' OR '%yahoo.com' OR '%aol.com'
Run Code Online (Sandbox Code Playgroud)

据我所知,输出看起来非常好.我在phpmyadmin中运行了一个测试查询,只有第一个域适用.在OR之后忽略任何东西.

我错过了这个查询有什么明显的错误吗?使用NOT LIKE语句时,不能使用多个OR语句吗?

php mysql

1
推荐指数
1
解决办法
1万
查看次数

如果不存在mysql插入到单独的表中

我正在尝试将临时导入表中的一组新联系人插入到我们的主要客户数据库中.在插入之前,我们首先要检查我们的黑名单中是否存在联系人.如果确实存在,我们不希望将其插入主表.

我首先从临时表中提取联系人:

SELECT `email` FROM `import_contacts`
Run Code Online (Sandbox Code Playgroud)

然后,我想将这些联系人插入主表,只有在它被"擦洗"或检查黑名单后.我目前的方式:

INSERT INTO `contacts` (`email`) 
VALUES ('".implode("','','',''),('",$email)."','','','') 
WHERE...
Run Code Online (Sandbox Code Playgroud)

当我遇到爆炸阵列时,我感到困惑,就像我已经破坏了所有联系人,包括那些黑名单上的联系人.因此,即使我要使WHERE声明工作,也会浪费并且充满模糊数据.

有没有办法在使用一个sql语句对黑名单表进行检查后将联系人插入主表?

任何帮助将不胜感激!!

php mysql

1
推荐指数
1
解决办法
745
查看次数