我fputcsv()通过在服务器上创建文件,填充它,然后在下一页链接到它,使用PHP从MySQL数据库中提供一些记录.
这很有用,但是因为这可能是敏感数据,所以我不希望在为(可能)一次性下载创建文件时挂起一大堆文件.
所以我想知道的是:有没有办法创建这个文件并提供下载服务,而无需在服务器上实际写入永久文件?
例如,我可以创建一个逗号分隔的字符串而不是使用fputcsv()并在输出缓冲区中使用正确的标头来提供它吗?
显而易见的举措是删除文件,但我需要等到客户端先下载它,这样才能决定何时进行操作.
欢迎任何建议
代码:
$fp = fopen($filename, 'w');
fputcsv($fp, array("Last Name", "First Name"));
foreach ($result as $fields)
{
fputcsv($fp, $fields);
}
fclose($fp);
Run Code Online (Sandbox Code Playgroud)
我有循环的数据,这些数据包括标题,内容,服务器上文件的路径以及各种其他信息.
目标是遍历数据并在循环中创建Worpress帖子,其中包含post_meta product_image的图片,如:add_post_meta($ post_id,'_ product_image',$ attach_id,true);
我的循环看起来像这样:
while($row = $STH->fetch()) {
$my_post = array(
'post_title' => $row->title,
'post_content' => $row->description,
'post_status' => 'publish',
'post_author' => $current_user->ID,
'post_category' => array(6)
);
// Insert the post into the database
$post_id = wp_insert_post( $my_post );
add_post_meta( $post_id, 'product_price', 199, true );
add_post_meta( $post_id, 'product_sub_price', 20, true);
require_once(ABSPATH . 'wp-admin/includes/image.php');
require_once(ABSPATH . 'wp-admin/includes/media.php');
require_once(ABSPATH . 'wp-admin/includes/file.php');
$filename = $row->image_local_name;
// Path to the file i want to upload into wordpress.
$path = ABSPATH . …Run Code Online (Sandbox Code Playgroud) 我有一个简单的问题,但我无法弄清楚解决方案.
我想要做的是获取一个输入字段的值并将其添加到另一个字段的值(请注意另一个字段已经有一个值,所以我要做的是简单地添加字符串)
这是我试过的:
1)小提琴1
$('#mobile_username').val($(this).val());
Run Code Online (Sandbox Code Playgroud)
这个忽略了第二个字段的默认值,只是覆盖它(不是我想要的)
2)小提琴2
$('#mobile_username').val += ($(this).val());
Run Code Online (Sandbox Code Playgroud)
所以我尝试将第一个字段的值添加到第二个字段,但没有任何反应.
我有一个简单的手风琴菜单,我今天使用jQuery slideDown()和slideUp()方法放在一起.示例代码:
<h1>the header</h1>
<div class='thechild'>
the content
</div>
$(function(){
$('h1').click(function(){
var next = $(this).next();
if (next.is(':visible'))
{
next.stop().slideUp();
}
else
{
next.stop().slideDown();
}
return false;
});
});
Run Code Online (Sandbox Code Playgroud)
这很有效,但是如果你<h1>在动画完成之前再次单击其中一个,那么你可以打破slideUp()或者slideDown()事件.似乎会发生的是,第二次单击时,它将slideUp()高度调零,但如果向下滑动,它将仅向下滑动到其最后一个最大高度 - 即高度.thechild是您最后一次中断动画的高度点击.
我需要的是,根据需要单击一次slideUp或slideDown .thechild,然后再单击一次以停止动画(如果正在运行)并向上滑动.thechild.随后的第三次单击应该向下滑动.thechild到它的全高,而不是在点击#2时中断时的高度.希望一切都有道理:)
我确定我曾经遇到过这个问题并以某种方式解决了它,但是不记得(或谷歌)我提出的解决方案.这仅仅是这些幻灯片方法的限制,并且是一种解决方法,可以animate()通过一些更高的工作来进行我自己的调用吗?
我试过玩你可以传入的各种布尔.stop(),但无济于事.必须有一些我想念的简单,有人能开导我吗?
jsfiddle:http://jsfiddle.net/cY6kX/
重新创建,双击<h1>多次并观察发生的情况,然后再单击几次以查看它将如何破坏,直到您重新加载页面.
任何指针都非常感激
使用jQuery 1.7.2
$(function(){
$('#parentElem').mouseenter(function(){
$('.myElem').animate({opacity:1}, 'fast');
}).mouseleave(function(){
$('.myElem').stop().animate{opacity:0}, 'slow');
});
});
Run Code Online (Sandbox Code Playgroud)
在这个例子中,我有一个淡入mouseenter事件的元素,然后再次停止并淡出(在mouseout)上以产生悸动效果.
我有一个问题 - 使用该.stop()方法,当前正在运行的动画将被中断并再次淡出 - 我的'悸动'效果不起作用.当然,这正是.stop()是用于 -但我真正想要做的仅仅是清除队列并让当前动画完成,同时加入了淡出动画队列.
有任何想法吗?
PS我也试过这个.clearQueue()方法,但这表现出类似的行为.
编辑:我真的应该提到的东西 - 我需要元素在光标结束时保持淡入 - 所以在animate函数上使用回调不会解决它.我已经更新了代码,使其更加明显.对不起任何困惑.
我一直试图弄清楚如何在 PHP 中调整上传图像的大小,使其不小于给定的大小 (650x650)。但是,如果用户上传的图像在任一边缘都小于我的 650 最小值,则无需采取任何措施。
场景 1 - 上传 2000 像素宽 x 371 像素的图像 - 这不会调整大小,因为 371 像素已经小于我的最小值。
场景 2 - 上传了 2000 像素 x 1823 像素的图像 - 在这里我应该将图像调整为尽可能接近最小值,但不允许宽度或高度低于 650 像素。
到目前为止,这是我一直在思考的路线(我正在使用优秀的 simpleImage 脚本来帮助调整大小和获取尺寸):
$curWidth = $image->getWidth();
$curHeight = $image->getHeight();
$ratio = $curWidth/$curHeight;
if ($curWidth>$minImageWidth && $curHeight>$minImageHeight)
{
//both dimensions are above the minimum, so we can try scaling
if ($curWidth==$curHeight)
{
//perfect square :D just resize to what we want
$image->resize($minImageWidth,$minImageHeight);
}
else if ($curWidth>$curHeight)
{
//height is …Run Code Online (Sandbox Code Playgroud) jquery ×3
php ×2
csv ×1
forms ×1
image-upload ×1
javascript ×1
slidedown ×1
slideup ×1
wordpress ×1