表不存在mysql,但它可以用于循环



我在这里使用MySQL数据库和php。

在PHP中,它获取表名称,然后通过表循环。将行拿起,然后将变量发送到函数。我正在使用循环来做到这一点。

问题是我有7个表。如果表2和3包含行,则它可以循环循环2并正确完成所有操作。并且它不给表。表1不存在错误。但是对于表3-7,它给出了所有表。

但是,如果我在表2中删除行,则它可以循环3并正确工作,并且对1和2的错误没有错误。但是对于表4-7,它给出了表不存在ERR。基本上,它仅通过一行循环循环,并为所有以下表提供错误。我不明白是MySQL或其他内容的连接问题。

下面是我的代码的片段:

        <?php
        $hostname_localhost ="localhost";
        $username_localhost ="xxxxxxx";
        $password_localhost ="xxxxxxxxx";
        $database_xxxxxxxxxx ="xxxxxxxxx";
        $database_yyyyyyyyyyy ="yyyyyyyyyy";
        $database_zzzzz = "zzzzz";
        $localhost = mysql_connect($hostname_localhost,$username_localhost,$password_localhost)
        or
        trigger_error(mysql_error(),E_USER_ERROR);
        $get_all_tables = mysql_query("SHOW TABLES FROM xxxxxxxxx");
        $table_names = array();
        while($row = mysql_fetch_array($get_all_tables, MYSQL_NUM)) {
        array_push($table_names,$row[0]);
        }
        mysql_select_db($database_xxxxxxx, $localhost);

        for ($i=0; $i<sizeof($table_names); $i++){

            $table = trim($table_names[$i]);
            $get_tag = mysql_query("SELECT * FROM $table");
            if ($get_tag){
            while($get_tag_infos = mysql_fetch_array($get_tag)){
                                $similarity = $get_tag_infos['similarity'];
                                //........... and many other variables
                                if ($similarity == 20){
                                    get20(many variables);
                                }
                                if ($similarity == 40){
                                    get40(many variables);
                                }
                                if ($similarity == 60){
                                    get60(many varibales);
                                }
                                if ($similarity == 80){
                                    get80(many variables);
                                }
                                if ($similarity == 100){
                                    get100(many variables);
                                }
                            }   
            }
            else{
                echo '</br> error! </br>'.mysql_error().mysql_errno();
            }
        }
        function get20(many variables){
            // performs a insert function to mysql
        }
        function get40(many variables){
            // performs a insert function to mysql
        }
        function get60(many variables){
            // performs a insert function to mysql
        }
        function get80(many variables){
            // performs a insert function to mysql
        }
        function get100(many variables){
            // performs a insert function to mysql
        }
        ?>

问题是与数据库的连接。在第一张表格找到您的连接之后,内在连接已更改。因此,使用不同的变量进行连接。我正在设置一个完美运行的代码。我已经测试了。

<?php 
//conection: 
$link = mysqli_connect("localhost","root","pass","test") or die("Error " . mysqli_error($link)); 
//consultation: 
$query = "show tables" or die("Error in the consult.." . mysqli_error($link)); 
//execute the query. 
$result = mysqli_query($link, $query); 
//display information: 
while($row = mysqli_fetch_array($result)) { 
  echo $row["Tables_in_test"] . "<br>"; 
  $link2 = mysqli_connect("localhost","root","pass","test") or die("Error " . mysqli_error($link));
  $query2 = "select * from ".$row['Tables_in_test'] or die("Error in the consult.." . mysqli_error($link2));
   $result2 = mysqli_query($link2, $query2);
    while($row2 = mysqli_fetch_array($result2)) {
    echo "<pre>";
    print_r($row2);
    echo "</pre>";
  }
} 
?> 

相关内容

  • 没有找到相关文章