首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >循环和变量php

问循环和变量php
EN

Stack Overflow用户
提问于 2014-06-25 07:59:28
回答 2查看 80关注 0票数 0

我从不使用php,我必须做一些简单的事情;我必须取一个字符串,子字符串,爆炸它,然后爆炸我在第一个爆炸后找到的数组的字符串。最后,我必须将字符串保存在db中。这是密码;

代码语言:javascript
复制
mysql_connect("xxx.xx.xx.xx:xxxx","xxxx","xxxxxx");

mysql_select_db("app");

$stringa = substr($rawData, 12, -1);    //works
$prima_sep = explode("%%", $stringa);   //works

$i = 0;
while ($i < count($prima_sep)) {
    $a = 0;
    $b = 1;

    $seconda_sep = explode("&&", $prima_sep[$i]);
    mysql_query("INSERT INTO test (DATA, STRING) VALUES ('".$seconda_sep[$a]."', '".$seconda_sep[$b]."')");

    $i++;
}

$rawDate看起来像这样

代码语言:javascript
复制
"stringa":"22/5/2014&&blablabla%%23/5/2014&&bla1bla1bla1"

我不明白为什么我用这个:

代码语言:javascript
复制
mysql_query("INSERT INTO test (DATA, STRING) VALUES ('ok', '".count($seconda_sep)."')");

计数($prima_sep)=2,我正确地在db中找到了2行,但是如果我使用

代码语言:javascript
复制
mysql_query("INSERT INTO test (DATA, STRING) VALUES ('".$seconda_sep[$a]."', '".$seconda_sep[$b]."')");

计数($prima_sep)=2我在db中只找到1行。

我要怎么做才能插入正确的行号??

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-25 08:30:33

怎么样,我不知道为什么要丢弃前12个字符,但是处理rawData可以很简单地这样做。

代码语言:javascript
复制
$rawData = '22/5/2014&&blablabla%%23/5/2014&&bla1bla1bla1%%24/5/2014&&bla1bla1bla2';

$rows = explode("%%", $rawData); 

foreach ( $rows as $row ) {
   $fields = explode('&&',$row);

   $sql = "INSERT INTO test (DATA, STRING) VALUES ('{$fields[0]}', '{$fields[1]}')";
   mysql_query($sql);
}

这将产生:

代码语言:javascript
复制
INSERT INTO test (DATA, STRING) VALUES ('22/5/2014', 'blablabla')
INSERT INTO test (DATA, STRING) VALUES ('23/5/2014', 'bla1bla1bla1')
INSERT INTO test (DATA, STRING) VALUES ('24/5/2014', 'bla1bla1bla2')
票数 0
EN

Stack Overflow用户

发布于 2014-06-25 08:18:44

你应该简单地拥有:

代码语言:javascript
复制
$stringa = $rawData;

而不是

代码语言:javascript
复制
$stringa = substr($rawData, 12, -1); 

否则,使用以下数据创建2个元素数组:

代码语言:javascript
复制
  0 => string 'lablabla' 
  1 => string '23/5/2014&&bla1bla1bla' 

正如您看到的第一个元素,当您使用&&分隔符爆炸它时,您将不会有2个元素,这就是为什么第一个元素的数据没有插入到数据库中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24403214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档