Php 如何从表中计算是/否并计算总数 $con=mysql\u connect(“本地主机”、“根目录”、“根目录”); $db=mysql\u select\u db(“email-db2”,$con); $query=“从报告中选择*”; $run=mysql\u query($query); 回声“ 联系电子邮件 电子邮件1 电子邮件2 电邮3 电子邮件4 电子邮件5 电子邮件6 电子邮件7 电邮8 电子邮件9 电邮10 电子邮件11 电邮12 电邮13 电子邮件14 全部的 "; while($row=mysql\u fetch\u array($run)){ $COL1=$row[0]; $COL2=$row[1]; $COL3=$row[2]; $COL4=$row[3]; $COL5=$row[4]; $COL6=$row[5]; $COL7=$row[6]; $COL8=$row[7]; $COL9=$row[8]; $COL10=$row[9]; $COL11=$row[10]; $COL12=$row[11]; $COL13=$row[12]; $COL14=$row[13]; $COL15=$row[14]; 回声“; echo“”;echo$COL1;echo“”; echo“”;echo$COL2;echo“”; echo“”;echo$COL3;echo“”; echo“”;echo$COL4;echo“”; echo“”;echo$COL5;echo“”; echo“”;echo$COL6;echo“”; echo“”;echo$COL7;echo“”; echo“”;echo$COL8;echo“”; echo“”;echo$COL9;echo“”; echo“”;echo$COL10;echo“”; echo“”;echo$COL11;echo“”; echo“”;echo$COL12;echo“”; echo“”;echo$COL13;echo“”; echo“”;echo$COL14;echo“”; echo“”;echo$COL15;echo“”; 回声'; $yesCount=0; $noCount=0; 对于($i=1;$i

Php 如何从表中计算是/否并计算总数 $con=mysql\u connect(“本地主机”、“根目录”、“根目录”); $db=mysql\u select\u db(“email-db2”,$con); $query=“从报告中选择*”; $run=mysql\u query($query); 回声“ 联系电子邮件 电子邮件1 电子邮件2 电邮3 电子邮件4 电子邮件5 电子邮件6 电子邮件7 电邮8 电子邮件9 电邮10 电子邮件11 电邮12 电邮13 电子邮件14 全部的 "; while($row=mysql\u fetch\u array($run)){ $COL1=$row[0]; $COL2=$row[1]; $COL3=$row[2]; $COL4=$row[3]; $COL5=$row[4]; $COL6=$row[5]; $COL7=$row[6]; $COL8=$row[7]; $COL9=$row[8]; $COL10=$row[9]; $COL11=$row[10]; $COL12=$row[11]; $COL13=$row[12]; $COL14=$row[13]; $COL15=$row[14]; 回声“; echo“”;echo$COL1;echo“”; echo“”;echo$COL2;echo“”; echo“”;echo$COL3;echo“”; echo“”;echo$COL4;echo“”; echo“”;echo$COL5;echo“”; echo“”;echo$COL6;echo“”; echo“”;echo$COL7;echo“”; echo“”;echo$COL8;echo“”; echo“”;echo$COL9;echo“”; echo“”;echo$COL10;echo“”; echo“”;echo$COL11;echo“”; echo“”;echo$COL12;echo“”; echo“”;echo$COL13;echo“”; echo“”;echo$COL14;echo“”; echo“”;echo$COL15;echo“”; 回声'; $yesCount=0; $noCount=0; 对于($i=1;$i,php,mysql,while-loop,count,html-table,Php,Mysql,While Loop,Count,Html Table,替换 $con = mysql_connect("localhost","root",""); $db = mysql_select_db("email-db2",$con); $query = "SELECT * FROM report"; $run = mysql_query($query); echo "<table> <thead> <tr> <th>Contact Em

替换

$con = mysql_connect("localhost","root","");
    $db = mysql_select_db("email-db2",$con);
    $query = "SELECT * FROM report";
    $run = mysql_query($query);
     echo "<table>
    <thead>
      <tr>
        <th>Contact Email</th>
        <th>email1</th>
        <th>email2</th>
        <th>email3</th>
        <th>email4</th>
        <th>email5</th>
        <th>email6</th>
        <th>email7</th>
        <th>email8</th>
        <th>email9</th>
        <th>email10</th>
        <th>email11</th>
        <th>email12</th>
        <th>email13</th>
        <th>email14</th>
        <th>Total</th>
      </tr>
    </thead>
    <tbody>";
    while ($row = mysql_fetch_array($run)) {
        $COL1 = $row[0];
        $COL2 = $row[1];
        $COL3 = $row[2];
        $COL4 = $row[3];
        $COL5 = $row[4];
        $COL6 = $row[5];
        $COL7 = $row[6];
        $COL8 = $row[7];
        $COL9 = $row[8];
        $COL10 = $row[9];
        $COL11 = $row[10];
        $COL12 = $row[11];
        $COL13 = $row[12];
        $COL14 = $row[13];
        $COL15 = $row[14];
      echo "<tr>";
         echo "<td>"; echo $COL1;  echo "</td>";
         echo "<td>"; echo $COL2;  echo "</td>";
         echo "<td>"; echo $COL3;  echo "</td>";
         echo "<td>"; echo $COL4;  echo "</td>";
         echo "<td>"; echo $COL5;  echo "</td>";
         echo "<td>"; echo $COL6;  echo "</td>";
         echo "<td>"; echo $COL7;  echo "</td>";
         echo "<td>"; echo $COL8;  echo "</td>";
         echo "<td>"; echo $COL9;  echo "</td>";
         echo "<td>"; echo $COL10;  echo "</td>";
         echo "<td>"; echo $COL11;  echo "</td>";
         echo "<td>"; echo $COL12;  echo "</td>";
         echo "<td>"; echo $COL13;  echo "</td>";
         echo "<td>"; echo $COL14;  echo "</td>";
         echo "<td>"; echo $COL15;  echo "</td>";
         echo '<td>';
         $yesCount = 0;
        $noCount = 0;
        for ($i=1; $i<= 15; $i += 2){
            if (empty($row['email'.$i])) {
                $noCount++;
            } else {
                $yesCount++;
            }
        }
        echo $yesCount;
         echo "</td>"; 
       echo "</tr>";
   } 
  echo "</tbody>
</table>";  
与:


为每个列使用一个循环,并根据列数在其中进行计数(注意,我假设它是db中的奇数和偶数列数,而不是在交换编号后的列数,这似乎不是必需的-如果不只是在计数器设置行中交换2和5的话)


不要使用
mysql.*
扩展,因为它在PHP 5.5版时已被弃用,在PHP 7.0版时已被删除。使用或替代。是的,我尝试了这个,但不工作。假设奇数列中有2个是,偶数列中有3个是,所以2x2+3x5=19,这意味着你的代码可以工作,但你能解决这个问题吗?看起来你带来了b确认查询中比您感兴趣的列多得多。从使用SELECT*更改为指定要返回的列名。所有表都是email1\u打开的、email2\u打开的、email3\u打开的……等等。我插入了这些,但显示了已编辑的错误,假设第一列(实际具有电子邮件地址)称为contact\u email“选择联系人电子邮件、电子邮件1打开、电子邮件1单击、电子邮件2打开、电子邮件2单击、电子邮件3打开、电子邮件3单击、电子邮件4打开、电子邮件4打开、电子邮件5打开、电子邮件5单击、电子邮件6打开、电子邮件6单击、电子邮件7打开、电子邮件7从报告中单击”;
$yesCount++; 
$yesCount += $i % 2 == 0? 2: 5;
<?php
    $con = mysql_connect("localhost","root","");
    $db = mysql_select_db("email-db2",$con);
    $query = "SELECT contact_email,
                    email1_opened,
                    email2_opened,
                    email3_opened, 
                    email4_opened, 
                    email5_opened, 
                    email6_opened, 
                    email7_opened, 
                    email8_opened, 
                    email9_opened, 
                    email10_opened, 
                    email11_opened, 
                    email12_opened, 
                    email13_opened, 
                    email14_opened 
            FROM report";
    $run = mysql_query($query);
    echo "<table>
    <thead>
      <tr>
        <th>Contact Email</th>
        <th>email1</th>
        <th>email2</th>
        <th>email3</th>
        <th>email4</th>
        <th>email5</th>
        <th>email6</th>
        <th>email7</th>
        <th>email8</th>
        <th>email9</th>
        <th>email10</th>
        <th>email11</th>
        <th>email12</th>
        <th>email13</th>
        <th>email14</th>
        <th>Total</th>
      </tr>
    </thead>
    <tbody>";
    while ($row = mysql_fetch_array($run, MYSQL_NUM)) 
    {
        echo "<tr>";
        $counter = 0;
        foreach($row AS $key=>$value)
        {
            echo "<td>$value</td>";
            $counter += (($key > 0 and $value == 'yes') ? (($key % 2 == 0) ? 5 : 2 ) : 0);
        }
        echo "<td>$counter</td>";
        echo "</tr>";
    } 
    echo "</tbody>
</table>";
<?php
    $con = mysqli_connect('localhost', 'root', '', 'email');
    $query = "SELECT contact_email,
                    email1_opened,
                    email2_opened,
                    email3_opened, 
                    email4_opened, 
                    email5_opened, 
                    email6_opened, 
                    email7_opened, 
                    email8_opened, 
                    email9_opened, 
                    email10_opened, 
                    email11_opened, 
                    email12_opened, 
                    email13_opened, 
                    email14_opened 
            FROM report";
    $run = mysqli_query($con, $query);
    echo "<table>
    <thead>
      <tr>
        <th>Contact Email</th>
        <th>email1</th>
        <th>email2</th>
        <th>email3</th>
        <th>email4</th>
        <th>email5</th>
        <th>email6</th>
        <th>email7</th>
        <th>email8</th>
        <th>email9</th>
        <th>email10</th>
        <th>email11</th>
        <th>email12</th>
        <th>email13</th>
        <th>email14</th>
        <th>Total</th>
      </tr>
    </thead>
    <tbody>";
    while ($row = mysqli_fetch_array($run, MYSQL_NUM)) 
    {
        echo "<tr>";
        $counter = 0;
        foreach($row AS $key=>$value)
        {
            echo "<td>$value</td>";
            $counter += (($key > 0 and $value == 'yes') ? (($key % 2 == 0) ? 5 : 2 ) : 0);
        }
        echo "<td>$counter</td>";
        echo "</tr>";
    } 
    echo "</tbody>
</table>";