[ smart_boy @ 28.07.2004. 11:43 ] @
pozdravi

imam neku news scriptu. ipload sm je na neti kada idem na neke stranice stalno mi pokazuje ovu gresku :

Citat:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/vedran/public_html/nws1/display.php on line 5


a kod je :

display.php
Code:

<?php 
include('db.php'); 
$q = mysql_query("SELECT * FROM $table ORDER BY id DESC LIMIT $limit"); // That queriesthe database 

while($r=mysql_fetch_array($q)){ 
$title = $r["title"]; 
$news = $r["news"]; 
$body = nl2br($news); 
$author = $r["author"]; 
$link = "mailto:".$r["email"]; 
$date = $r["date"]; 
echo "<table width=\100%\ cellspacing=\2><tr> 
<td><b>$title</b> posted by <a href='$link'>$author</a> on $date</td></tr> 
<tr><td>$body</td></tr> 
</table>"; 

?> 


db.php
Code:
<?php 
$user = "user"; 
$pass = "pass"; 
$dbase = "db_user"; 
$table = "news"; 
$host = "localhost"; 
$limit = "5"; 

$cnx = mysql_connect($host, $user, $pass); 
mysql_select_db($dbase); 
?> 


i
Code:
CREATE TABLE `news` ( 
`id` INT( 40 ) NOT NULL AUTO_INCREMENT , 
`title` VARCHAR( 200 ) NOT NULL , 
`date` DATE NOT NULL , 
`news` TEXT NOT NULL , 
`author` VARCHAR( 40 ) NOT NULL , 
`email` VARCHAR( 100 ) NOT NULL , 
PRIMARY KEY ( `id` ) 
); 


uvijek mi se prikazuje ista greska KOD SVIH SCRIPTI !!!

molim vas pomozite mi !
thx
[ boccio @ 28.07.2004. 13:06 ] @
cisto na prvu loptu... da li si probao ovako:

$q = "SELECT * FROM {$table} ORDER BY id DESC LIMIT {$limit}";
$sql = mysql_query($q);
while($r=mysql_fetch_array($sql)) {

[ smart_boy @ 28.07.2004. 15:00 ] @
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/vedran/public_html/nws1/display.php on line 16

nista : \ stvarno ne kontam ovo :(
[ _owl_ @ 28.07.2004. 15:32 ] @
Pa ovako odoka cini mi se da su za LIMIT potrebna dva parametra, pocetak i offset. Uglavnom mozes da svom kodu posle mysql_query() dodas:
Code:

   echo $sql;
   print_r(mysql_error());


[ dr ZiDoo @ 28.07.2004. 16:14 ] @
Citat:
smart_boy: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/vedran/public_html/nws1/display.php on line 16

nista : \ stvarno ne kontam ovo :(


Funkcija koju si pozvo ne moze da izvrti zadati string zato sto on nije u odgovarajucem formatu, tj. mysql_fetch_array ne moze da izvrti string zato sto on nije niz nego vjerovatno greska u queryu.
[ smart_boy @ 28.07.2004. 17:04 ] @
evo stavio sam to i dobio :

Table "exel_tabela.news' doesn't exist
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/vedran/public_html/nws1/display.php on line 18

napravio sam cijelu tabelu u phpmyadminu osim PRIMARY KEY ( `id` ), kako cu to napravit ?

tebela :

CREATE TABLE news (
id INT( 40 ) NOT NULL AUTO_INCREMENT ,
title VARCHAR( 200 ) NOT NULL ,
date DATE NOT NULL ,
news TEXT NOT NULL ,
author VARCHAR( 40 ) NOT NULL ,
email VARCHAR( 100 ) NOT NULL ,
PRIMARY KEY ( `id` )
);


ili na primjer ovo : ENGINE=MyISAM AUTO_INCREMENT=4

u tabeli

CREATE TABLE `news` (
`id` int(11) NOT NULL auto_increment,
`title` text NOT NULL,
`message` longtext NOT NULL,
`who` text NOT NULL,
`date` text NOT NULL,
`time` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 ;
[ bluesman @ 28.07.2004. 23:15 ] @
exel_tabela.news znaci da tabela news ne postoji u bazi excel_tabela. Da li si siguran da si:
a) selektovao dobru bazu za rad (onu koja ti treba)?
b) ubacio tabelu bas u tu bazu a ne u neku drugu?

Jos ako si iz phpmyadmin - vrlo lako mozes greskom da dodas tabelu u neku sasvim drugu bazu od one u koju si hteo. Proveri.

startuj mysql pa kucaj:
mysql> use excel_tabela
mysql> show tables;

i treba da ti se prikaze spisak svih tabela u bazi. Tvoja tabela treba da je tamo (ako si je dobro kreirao).
[ smart_boy @ 29.07.2004. 00:08 ] @
ehh THX !
sve sam skonto, napravio sam install scriptu sve ql radi, osim ... :D
napravim display.php

Code:

<?php
include ("config.php");

$conn = mysql_connect("$db_host", "$db_user", "$db_pass") or die("Ne mogu se konektovati");
mysql_select_db("$db_name", $conn);

$q = "SELECT name FROM news1";


$sql = mysql_query($q);
echo $sql;
print_r(mysql_error());

while($r=mysql_fetch_array ($sql)) {
$title = $r["news"];

echo "$title"
}
?>


samo mi ispise : Resource id #4
i nista vise ... :\
una li iko sta ovo znaci ??

thx :D
[ bluesman @ 29.07.2004. 00:48 ] @
Pa to je normalno, jer mysq_query vraca resource tip (pogledaj PHP manual) i to ne mozes da printas (mozes ali samo ispise ono sto je tebi ispisao)

osim toga, ti radis SELECT name...
a stampas $r["news"];
kako si to mislio da izvedes? :-)

mysq_errror() vraca string a ne array, pa mozes sa echo (ne moras print_r)

recimo bolji code bi bio ovako:
Code:

<?php
include ("config.php");

$conn = mysql_connect("$db_host", "$db_user", "$db_pass") or die("Ne mogu se konektovati");
mysql_select_db("$db_name", $conn);

$q = "SELECT name FROM news1";
$sql = mysql_query($q) or print("MYSQL ERROR: #".mysql_errno().": ".mysql_error());

if ($sql)
     {
     while($r=mysql_fetch_array ($sql)) {
          echo $r["name"];
     }
else
     echo "some bullshit happened, error in query";
?>
[ smart_boy @ 29.07.2004. 16:17 ] @
thx radi :)
i jos samo jedna stvarcica :D
kako da brisem iz tabele :D

ovako imam ovaj kod:

Code:

<? 
if(!isset($cmd)) 
{

   $result = mysql_query("select * from news order by id"); 
  
   while($r=mysql_fetch_array($result)) 
   { 

      $title=$r["title"];//take out the title
      $id=$r["id"];//take out the id

      echo "<a href='delete.php?cmd=delete&id=$id'>$title - Delete</a>";
      echo "<br>";
    }
}

if($_GET["cmd"]=="delete")
{
    $sql = "DELETE FROM news WHERE id=$id";
    $result = mysql_query($sql);
    echo "Row deleted!";
}
?>


(skino sam sa neto ovaj kod)

ubacim sve i namjestim i ispisu mi se rediovi. kad kliknem na delete on otvori novi prozor i kaze "the page cannot..."
a kada napravim delete.php i ubacim kod :

if($_GET["cmd"]=="delete")
{
$sql = "DELETE FROM news WHERE id=$id";
$result = mysql_query($sql);
echo "Row deleted!";
}

kaze mi row deleted al nista ne izbrise

eto jos samo ovo i necu vas vise zamarat:
kako da fino napravim kod da mi brise
thx for any help :)
[ _owl_ @ 29.07.2004. 20:19 ] @
Mozda ovako:
Code:

if($_GET["cmd"]=="delete") {
   $sql = "DELETE FROM news WHERE id='" . $_GET["id"] . "'";
   $result = mysql_query($sql);
   echo "Row deleted!";
}
[ smart_boy @ 29.07.2004. 20:58 ] @
thx, ovo stvarno radi :D
sada cu se zadat i sam skontat kako da editujem :D
one more time thx ;)