小编oka*_*56k的帖子

在PHP中打印会话数组中的值

我正在尝试打印一个我存储在会话变量数组中的值列表,而我所得到的只是"已发送标题..."错误.在错误页面上,我可以看到阵列工作,但显然它不会从那里继续.错误提到的这一行是这样的:

$uploadedfiles = print_r($_SESSION['uploadedfiles']);
Run Code Online (Sandbox Code Playgroud)

声明了数组,并将值添加到它:

array_push($_SESSION['uploadedfiles'], $file_name);
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

谢天谢地.

php printing arrays session

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

Rails:format.html中的params {render ...}

我试图在控制器方法中传递params,format.html如下所示:

def create
  @doc = Doc.new(params[:doc])
  respond_to do |format|
    if @doc.save
      format.html { redirect_to share_url(@doc.user.ftp, @doc) }
    else
      format.html { render "new", :locals => { :template => @doc.template_id } }
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我得到一个no方法错误,告诉我我正在向:template局部变量发送正确的参数:

local_assigns {:template=>4}
Run Code Online (Sandbox Code Playgroud)

有什么我不想让它工作吗?它应该重定向到doc#new动作,但它会转向doc#index.有任何想法吗?

templates ruby-on-rails ruby-on-rails-3

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

为什么Nokogiri会给我多个结果?

我正在尝试使用Nokogiri解析HTML字符串,但我收到了一些递归问题,我无法弄清楚为什么.

鉴于这些命令:

string = <h3>Lancers were arranged.&nbsp;</h3>
         <div>Gabriel found himself partnered with Miss Ivors.</div>
         <br>She leaned. He lit a <b>candle</b>.
         They followed him in silence, their feet falling in soft thuds on the thickly carpeted stairs.<br>

body = Nokogiri::HTML(string)
result = []
body.traverse { |node| result << node }
Run Code Online (Sandbox Code Playgroud)

我期待一系列上述元素.相反,我得到了这个:

[#<Nokogiri::XML::DTD:0x3fde1f3d5274 name="html">
#<Nokogiri::XML::Text:0x3fde1e88d330 "Lancers were arranged. ">
#<Nokogiri::XML::Element:0x3fde1ea56a68 name="h3" children=[#<Nokogiri::XML::Text:0x3fde1e88d330 "Lancers were arranged. ">]>
#<Nokogiri::XML::Text:0x3fde1e88c764 "Gabriel found himself partnered with Miss Ivors.">
#<Nokogiri::XML::Element:0x3fde1e88cd04 name="div" children=[#<Nokogiri::XML::Text:0x3fde1e88c764 "Gabriel found himself partnered with …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails nokogiri ruby-on-rails-3

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

正则表达式为四位数字,每个数字最多为100

我正在尝试编写一个正则表达式来验证一个字符串,并且只接受一系列四个以逗号分隔的数字,每个数字都取决于100.这样的东西是有效的:

20,30,40,50
Run Code Online (Sandbox Code Playgroud)

这些无效:

120,0,20,0
20,30,40,ss
invalid_string
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

它们用于CMYK颜色.我们只需将它们存储在这里,而不是使用它们.

ruby regex

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

Activestorage:获取 S3 密钥(不是 Rails blob 密钥)

我正在使用 Activestorage。我想检索 S3 密钥以移交给微服务。我不想在 Rails 应用程序中下载 blob 或类似的东西,我只想在 API 请求中提供文件路径/密钥。

service_url 有点矫枉过正,因为我已经可以访问微服务中的存储桶,更不用说这些是大文件,我不需要不必要地传输它们的事实。

我有哪些选择?

ruby-on-rails amazon-s3 ruby-on-rails-5 rails-activestorage

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

从嵌套哈希中删除所有类似的键

给定这样的哈希:

{
  id: 1,
  name: "test",
  children: [
    { id: 1, name: "kid 1" },
    { id: 2, name: "kid 2" }
  ]
}
Run Code Online (Sandbox Code Playgroud)

如何递归删除所有 id密钥?

ruby ruby-on-rails

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

如何将命令 stdout 保存到文件?

我正在编写一个具有特定日志记录要求的函数。我想捕获调用的输出Command::new()并将其保存到文件中。我只是echo为了简单起见在这里使用。

fn sys_command(id: &str) -> u64 {
    let mut cmd = Command::new("echo")
        .args(&[id])
        .stdout(Stdio::piped())
        .spawn()
        .expect("failed to echo");

    let stdout = cmd.stdout.as_mut().unwrap();
    let stdout_reader = BufReader::new(stdout);
    // let log_name = format!("./tmp/log/{}.log", id);
    // fs::write(log_name, &stdout_reader);
    println!("{:?}", stdout_reader.buffer());

    cmd.wait().expect("failed to call");
    id.parse::<u64>().unwrap()
}
Run Code Online (Sandbox Code Playgroud)

如何捕获输出并将其保存到文件中?我在这里建了一个游乐场。我的println!电话回来了[]

即使读取另一个缓冲区也会打印错误的值。下面,sys_command("10")打印3. 这是一个更新的游乐场。

fn sys_command(id: &str) -> u64 {
    let mut buffer = String::new();
    let mut cmd = Command::new("echo")
        .args(&[id])
        .stdout(Stdio::piped())
        .spawn()
        .expect("failed …
Run Code Online (Sandbox Code Playgroud)

io child-process rust

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

PHP会话变量和jQuery

所以,我在处理PHP会话变量时遇到了一些问题.我有一个jQuery函数将变量发布到PHP文件(工作,请参阅此处的代码):

   $('#practiceid').blur(function() {
    var practiceid = $(this).val();
    $.post("delicious.php", {"pid": practiceid});
   });
Run Code Online (Sandbox Code Playgroud)

感谢Firebug,我可以看到delicious.php接收变量.现在,该PHP文件中的代码是:

$_SESSION['uploaddir'] = $_POST['pid'];
Run Code Online (Sandbox Code Playgroud)

现在的问题是,当我尝试在其他PHP文件中使用会话变量时,它似乎不存在.我已经session_start();在index.php文件中声明了.

有任何想法吗?

非常感谢.

php variables session jquery

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

Geocoder:如果响应超过查询限制

如果已达到API查询限制,如何询问Geocoder gem地址?

csv.each_with_index do |row, i|
  if !row[:location_1].nil?
    coords = row[:location_1]
    g = Geocoder.address(coords)
    row[:address] = g
  end

  if g.include?('over query limit')
    p "limit hit"
  end
end
Run Code Online (Sandbox Code Playgroud)

我不确定要问哪个对象.控制台中出现错误:

Google Geocoding API error: over query limit.
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在代码中检查它.有帮助吗?

google-maps ruby-on-rails rails-geocoder ruby-on-rails-4

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

Rust:检查 Vec 中的两个元素是否满足条件

鉴于Vec<isize>这样:

let input = "12
  122
  100
  4444
  34
  3
  66
  78
  9";

let contents = input.lines()
    .map(|l| l.parse().unwrap())
    .collect();
Run Code Online (Sandbox Code Playgroud)

我想确定是否contentscontains 2 isizes 加起来为300,我认为该函数应该是这样的。

fn check_for_factors(contents: Vec<isize>, target: isize) -> bool {
    contents
        .into_iter()
        .any(|&x| x + contents[0..n] == target) // or however to loop here
}

check_for_factors(contents, 300);
Run Code Online (Sandbox Code Playgroud)

问题是,我不确定如何contentsany块中循环。这个解决方案可行吗?如何在contents最后一行内循环?

rust

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