2014-11-27 2 views
-1

У меня проблема. Я искал ее, но я не мог найти ответ. Итак, у меня есть сайт, на котором пользователи могут добавлять свои творения. Эти творения идут в таблице MySql. Теперь я хочу взять данные из этой таблицы и отправить ее в .txt-файл, но я хочу сохранить его в txt-файле с заголовком, который у него есть в таблице. Моя MySQL таблица содержит 4 колонки:MySql to txt с PHP

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 
+0

Вы можете разместить код того, что вы уже пробовали? –

ответ

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); 
     } 
+2

mysql_ * устарел, вы должны использовать mysqli_ * или PDO –

+0

Это правда ... но причина, по которой его устарело, связано с SQL-инъекцией. Вышеприведенный код не имеет больших возможностей для SQL-инъекций. Помимо того, что адаптация кода к mysqli тривиальна – ACCurrent