首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SobiPro导出-无限循环

SobiPro导出-无限循环
EN

Stack Overflow用户
提问于 2014-03-26 09:52:16
回答 2查看 197关注 0票数 0

下面的代码是一个导出工具,我本质上是查询SobiPro的数据库,拉取条目(公司)列表以及相关的自定义字段。

我在这里偶然发现了一个无限循环。有些部分只是为了标注ID,所以忽略公司/电子邮件/电话/等部分。

下面的信息将导出到CSV,因此将这些信息配对是至关重要的。

下面是我的代码。有什么想法吗?

代码语言:javascript
复制
$ideas = mysql_query("SELECT itemid FROM jos_sobi2_item") or die(mysql_error());

while ($row = mysql_fetch_array($ideas)) {
    $info[] = $row['itemid'];
}

foreach($info as $item) {
$entryID = $item['itemid'];
$queryfields = mysql_query("SELECT fieldid, data_txt, itemid FROM jos_sobi2_fields_data WHERE itemid = '". $entryID ."'");
//$queryfields = mysql_query("SELECT fieldid, data_txt, itemid FROM `jos_sobi2_fields_data` WHERE `itemid` = '$entryID'");

while ($rowqueryfields = mysql_fetch_array($queryfields)) {
    $rowfields[] = $rowqueryfields;
}
foreach($rowfields as $item) {  
    // Primarily what I need is name, company and contact info such as phone, email fax web!
    $contactPerson = '9'; // Name
    $city = '3'; // City
    $state = '5'; // State
    $phone = '10'; // Phone
    $email = '7'; // Email
    $fax = '11';
    $website = '8';     

    if($item['fieldid'] == 9) {
        echo '<strong>Name: </strong>' .$item['data_txt'] . '</br>';
    }
    if($item['fieldid'] == 3) {
        //echo '<strong>City: </strong>' .$item['data_txt'] . '</br>';
    }
    if($item['fieldid'] == 5) {
        //echo '<strong>State: </strong>' .$item['data_txt'] . '</br>';
    }
    if($item['fieldid'] == 10) {
        //echo '<strong>Phone: </strong>' .$item['data_txt'] . '</br>';
    }
    if($item['fieldid'] == 7) {
        //echo '<strong>Email: </strong>' .$item['data_txt'] . '</br>';
    }
    if($item['fieldid'] == 8) {
        //echo '<strong>Website: </strong>' .$item['data_txt'] . '</br>';
    }
}
}
EN

回答 2

Stack Overflow用户

发布于 2015-12-01 21:35:38

为什么不直接使用SobiPro ImEx应用程序呢?

票数 1
EN

Stack Overflow用户

发布于 2014-03-26 10:30:27

尝试如下所示:

代码语言:javascript
复制
$sql = "SELECT I.itemID, fieldid, data_txt FROM jos_sobi2_item I";
$sql .= " JOIN jos_sobi2_fields_data D on D.itemID = I.itemID";

if( $result = mysql_query( $sql ) ) {
   while( $row = mysql_fetch_array( $result ) ) {
      switch( $row['fieldid'] ) {
        case 9:
           echo '<strong>Name: </strong>' .$item['data_txt'] . '</br>';
           break;
        case 3:
           echo //whatever goes here
           break;
        // other cases
      }
   } else {
      // database error so echo or whatever

}

我还没有尝试过,所以不要因为任何小的语法错误而责怪我;)

希望能有所帮助。玩得开心..。

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

https://stackoverflow.com/questions/22650006

复制
相关文章

相似问题

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