Autor Zpráva
quiet_user
Profil
     
     
     include'db/connect.php';
     
        mysql_query("INSERT INTO control (urladdress,category,desc,ipaddress,date)

	      VALUES   ('".$urlAddress."',
                    '".$category."',
                    '".$descPage."',
                    '".$ipAddress."',
                    '".$dateAdd."')
        ");


Mám tento kód, který mi nefunguje, ale nepíše chybu - žádnou. Ani mysql_error(); mi nic nehlásí. Jde o připojení k localhostu, který mám si myslím správně.

<?php 
 $spojeni = mysql_connect("localhost","root","" ) or die ('Chyba!');
	mysql_select_db("snadhledem", $spojeni) or die ('Chyba databáze!');
	mysql_query("SET NAMES utf8");
?>


a navíc by to hodilo hlášku, kdyby si to DB nenašlo. Problém je takový, že se odešle formulář, vypíše to kladnou zprávu o přidání, ale do db se nic nepřidá. Všechny položky jsem zkusil dát do echa a vypíšou se, takže prázdné nejsou. V DB je to také v pořádku. Takže už nevím kde může být chyba :( Díky za rady
Alphard
Profil
Jaká je návratová hodnota funkce mysql_query()? Zkoušel jste si vypsat celý dotaz a spustit v nějakém správci? Jiné dotazy na db fungují? Bylo mysql_error() hned za tímto dotazem?

date je vyhrazené slovo, zkuste ho dát do zpětných apostrofů, ale jestli je to problém, měla by se generovat chyba.
quiet_user
Profil
Hah, tak mysql_query() vypsal

Warning: mysql_query() expects at least 1 parameter, 0 given in C:\wamp\www\index.php on line 132

    // Zkontrolujeme správnost dat
     if($urlAddress!="" && $urlAddress!="http://" && $descControl>150) {   
     
     include'db/connect.php';
        mysql_query("INSERT INTO control (urladdress,category,desc,ipaddress,date)

	      VALUES     ('".$urlAddress."',
                    '".$category."',
                    '".$descPage."',
                    '".$ipAddress."',
                    '".$dateAdd."')
        ");

       echo("$urlAddress | $category | $descPage | $ipAddress | $dateAdd");


       // Vypíšeme hlášku, že přidání je v pořádku
       echo" <div class='good'><img style='float: left; height: 20px;'src='images/ok.png'> &nbsp;&nbsp;   Stránka " . $urlAddress . " byla předána ke schválení. </div> ";
     }



Toto je celý kód
quiet_user
Profil
Teď jsem přejmenoval i date -> dateadd i v db a není to tim.
Keeehi
Profil
quiet_user:
Který řádek je řádek 132? Je to řádek 5?
quiet_user
Profil
    // Zkontrolujeme správnost dat
     if($urlAddress!="" && $urlAddress!="http://" && $descControl>150) {   
     
     include'db/connect.php';
     mysql_query();
        mysql_query("INSERT INTO control (urladdress,category,desc,ipaddress,dateadd)

	      VALUES     ('".$urlAddress."',
                    '".$category."',
                    '".$descPage."',
                    '".$ipAddress."',
                    '".$dateAdd."')
        ");


Warning: mysql_query() expects at least 1 parameter, 0 given in C:\wamp\www\index.php on line 132

132 = řádek s mysql_query();


fakt už si nevim rady, není to třeba nastavením localhostu? teď jsem přeinstalovával, tak jestli nemusim něco nastavit/povolit...
Spectator
Profil
quiet_user:
mysql_query("INSERT INTO control (urladdress,category,desc,ipaddress,date)
>
VALUES ('".$urlAddress."',
'".$category."',
'".$descPage."',
'".$ipAddress."',
'".$dateAdd."')
");

mě připadá zápis těch VALUES nějak zbytečně komplikovaný. Mě funguje takový:
 mysql_query("INSERT INTO confirmreg (confirm,jmeno,login,email,pass)
                            VALUES
                             ('$confirm',
                             '$postedName',
                             '$postedLogin',
                             '$postedEmail',
                             '$correctPass')");

Tím myslím apostrofy. Neříkám, že je problém v tom, ale i to bych zjednodušil.

a to na řádku 5 nechápu.
Spectator
Profil
Spectator:
132 = řádek s mysql_query();
mysql_query() znamená, že php posílá do databáze dotaz, ovšem v tvém případě má dotaz php na tebe > a to : CO MAM DO TY DB POSLAT?
quiet_user
Profil
Tím to rozhodně není. Zkusil jsem to, ale jak říkám tím to není. Už jsem z toho docela na provaz, takováhle "banalita" mi sebere 2 hodiny práce. Jiný nápad?
quiet_user
Profil
Spectator:
Ovšem řádek mysql_query(); nemá s celkovým skriptem nic společného. Btw. je to warning, i přes ten by měl být zbytek proveden.
Spectator
Profil
quiet_user
každopádně řádek 132 (zde 5) bych smazal.
quiet_user
Profil
nemáte někdo teamviewer, kdo by na to juknul v rychlosti? Nebo mě asi šlehne.
Keeehi
Profil
V [#6] je na 5. řádku prázdné mysql_query. Není to náhodou tím?
quiet_user
Profil
To jsem oddělal, zmizela chyba, ale do DB se žádná data neuložila a stejně se vypsala kladná hláška.
Keeehi
Profil
Tak si ten sestavený dotaz vypište a pak ho zkuste vložit třeba do phpmyadminu nebo admineru.
quiet_user
Profil
Už jsem chybu našel

(urladdress,category,desc,ipaddress,dateadd)

->

('urladdress','category','desc','ipaddress','dateadd')
Keeehi
Profil
quiet_user:
Ono totiž kromě vyhrazeného slova date tam máš i jiné vyhrazené slovo: desc. Takže stačí jen přejmenovat sloupec.
Soupis všech vyhrazených slov nalezneš zde.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0