【问题标题】:MySql to text with PHPMySql 用 PHP 转文本
【发布时间】:2015-01-25 16:39:20
【问题描述】:

我有问题。我用谷歌搜索了它,但我找不到答案。所以,我有一个网站,用户可以在其中添加他们的作品。这些作品将在 MySql 表中进行。现在,我想从这个表中获取数据并将其发送到一个 .txt 文件,但是,我想将它保存在一个文本文件中,其标题与表中的标题相同。我的 mysql 表有 4 列:

creations, title, user and categories. 

我想将表格中的每一行保存在一个单独的文本文件中,其中的标题来自标题列。或者,当用户单击发布创建以不将其发送到数据库而是将其直接发送到具有他们添加的标题的文本文件时。


这是 postcreations.php

if ($_POST['posteaza']) {
   $con=mysqli_connect("localhost", $uname, $password,$database) or die (" nu ma pot conecta");
    mysqli_query($con,"CREATE TABLE IF NOT EXISTS postest (id int(255) NOT NULL auto_increment primary key,
    continut varchar(10000000),
    titlul varchar(200),
    categorie varchar(200),
    user varchar(30))") or die (" nu pot crea");
    $text = mysqli_real_escape_string($con,(stripslashes($_POST['continut']))); 
    $titlul = mysqli_real_escape_string($con,(stripslashes($_POST['titlul']))); 
    $categorie=mysqli_real_escape_string($con,(stripslashes($_POST['categorii'])));
    $user=$_POST['username'];
    if($text!=NULL && $titlul!=NULL)
   mysqli_query($con,"INSERT INTO postest(continut,titlul,categorie,user)  VALUES ('$text','$titlul','$categorie','$username')") or die ('Error updating database');

这就是我取出所有东西的方式:

$con=mysqli_connect("localhost",$name,$password,$database) or die("Nu se poate deschide baza de date");
$query = "SELECT * FROM postest1"; 
$result = mysqli_query($con,$query);
 while($row = mysqli_fetch_array($result)){   //Creates a loop to loop through results


 echo "<table><tr><td>" . $row['titlul'].", de ".$row['user']."</td><td></table>";  //$row['index'] the index here is a field name

【问题讨论】:

  • 你能发布你已经尝试过的代码吗?

标签: php mysql database html-table


【解决方案1】:

你来了

 <?php 
       //Connect to database then insert following
        $result = mysqli_query($CONN, "SELECT creations, title, user, categories FROM people WHERE id = '42'");
        if (!$result) {
                  echo 'Could not run query: ' . mysqli_error();
                  exit;
        }
        while($row=mysqli_fetch_array($result)) {
              $fp = fopen($row["title"].'.txt', 'w');
              fwrite($fp, "creation:".$row["creations"].",title:".$row["title"].",user:".$row["user"].",catagories:".$row["catagories"]);
              fclose($fp);
        }

【讨论】:

  • mysql_* 已弃用,您应该使用 mysqli_* 或 PDO
  • 确实如此……但不推荐使用它的原因是由于 sql 注入。上面的代码没有太多的sql注入机会。除此之外,将代码适应 mysqli 是微不足道的
猜你喜欢
  • 2012-12-25
  • 1970-01-01
  • 2023-03-23
  • 1970-01-01
  • 1970-01-01
  • 2011-10-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多