Autor Zpráva
Anonymní
Profil *
prosim, ja som v PHP strasna lama...
skusam pouzivat sql (dnes prvy krat) taky jednoduchy system vamzanie, pridanie ludi...
ale uz to robim asi 4 hodiny a stale nic, uz som vyskusal aj viac hostingov aj databaz
prosim, poradte mi co robim zle...

<?php

Header("Content-Type: text/html; charset=utf-8");
?>
<html>


<head>


<title>SQL</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="shortcut icon" href="favicon.ico" />
<meta name="description" content="popis" xml:lang="sk" />
<meta name="keywords" content="klucove slova" xml:lang="sk" />
<meta name="robots" content="index, follow" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-language" content="sk" />

</head>


<body>
<? if ($_GET['udaje'] != "ano"): ?>
Pridanie do databazy: <br /><br />
<form action="creat_table.php">
<input type="hidden" name="udaje" value="ano">
Skutocne chces vytvorit tabulku ?<br />
<input type="submit" value="Potvrdit">
</form>
<a href="index.php">Pridaj zaznam</a><br />
<a href="vymaz.php">Vymaz zazanam</a><br />
<a href="vymaz_all.php">Vymaz vsetko (celu tabulku)</a><br />
<a href="zobraz.php">Zobraz zaznamy</a><br />
<? else:
do {
@$spojenie = MySQL_Connect("mysql.wz.cz", "meno", "heslo");
if (!$spojenie) {echo "nepodarilo sa pripojit k databaze"; break;}
MySQL_Select_DB("databaza");
MySQL_Query("

CREATE TABLE ludia (
id int NOT NULL PRIMARY_KEY AUTO_INCREMENT,
meno varchar(255),
priezvisko varchar(255),
vek int,
povolanie varcar(255))

");
MySQL_Close($spojenie);

} while (false);
endif; ?>


</body>


</html>
centi
Profil
Jedine co tam vidim zle je: povolanie varcar(255))... je tam preklep, malo by to byt varchar. Ci to vsak riesi problem netusim. Hadze ti to aspon nejake chybove hlasky?
Anonymní
Profil *
nie, vyhodi mi to cistu stranku...
ja tam syntakticku chybu tiez nevidim, ale nechapem v com by mohol byt problem..
ale ked som si dal v PHPMyAdminovi vygenerovat kod, dalo mi nazvy (ako ludia, meno. priezvisko...)
do uvodzoviek.. ale neide ani tak.. aste idem skusit hosting site
Anonymní
Profil *
prosim, preco mi to neide ??? :-((((((((((
Anonymní
Profil *
prosiim....
centi
Profil
1. pri prvom zobrazeni tej stranky sa zobrazi formular, alebo nie?
2. ak sa zobrazi formular a vyplnis ho (nastavi sa udaje=ano), dostanes prazdnu stranku?? malo by to nieco vypisat? lebo podla kodu veru nie (vetva else).

A musim sa priznat, ze cely ten kod je dost divny. Napriklad som v PHP este nevidel (co neznamena ze to neexistuje) pouzit keyword do, dost ma tam matie aj osamotene while (false);, pretoze netusim aky ma ucel.

Mozny by pomohla aj linka na problematicku stranku.
Leo
Profil
do... while je cyklus, ktery v PHP legalne existuje, Leo
Anonymní
Profil *
stranka sa mi zobrazi prazdna, ale potom sa mrknem do phpMyAdmina a tabula tam nie je...
do - while je cyklus, ktory sa MUSI vykonat aspon raz (dalsie vykonania su podla podmienky v zatvorke za while...)
centi
Profil
Leo, Anonymní: Ok, sypem si popol na hlavu. Pisem aj o DO aj o WHILE, ale dohromady si ich nedam :-)
centi
Profil
Anonymní
Tak som chybu predsa len nasiel. Dobre bola schovana mrska :-)

PRIMARY_KEY je zle, nema tam byt podtrzitko. cize len: PRIMARY KEY
Anonymní
Profil *
nechapem, ono to aj tak neide...
skusil som vytvorit tabulku v adminovi, dat tam 2 riadky, a obmenit ten kod tak aby mi vypisal riadky...
FUNGUJE.. takze uz fakt neviem v com je chyba...
centi
Profil
No ja som si schvalne cely ten kod ulozil a zmenil len pristupove udaje k mojej DB a ked som opravil to primary key, tak to slo.

Skus este cele Mysql_query ulozit do nejakej premennej, napr: $result a potom:


if (!result)
{
//ak je nejaka chyba ukonci skript a vypis chybu
die(mysql_error());
}


malo by ti vypisat error hlasku.
Anonymní
Profil *
IDE TO !!!

<? if ($_GET['udaje'] != "ano"): ?>

Pridanie do databazy: <br /><br />
<form action="creat_table.php">
<input type="hidden" name="udaje" value="ano">
Skutocne chces vytvorit tabulku ?<br />
<input type="submit" value="Potvrdit">
</form>
<a href="index.php">Pridaj zaznam</a><br />
<a href="vymaz.php">Vymaz zazanam</a><br />
<a href="vymaz_all.php">Vymaz vsetko (celu tabulku)</a><br />
<a href="zobraz.php">Zobraz zaznamy</a><br />
<? else:
do {
// @
$spojenie = MySQL_Connect("localhost", "name", "pass");
// if (!$spojenie) {echo "nepodarilo sa pripojit k databaze"; break;}
MySQL_Select_DB("dbase");
$sql = 'CREATE TABLE `ludia` ('
. ' `id` INT NOT NULL AUTO_INCREMENT, '
. ' `meno` VARCHAR(255), '
. ' `priezvisko` VARCHAR(255), '
. ' `vek` INT, '
. ' `povolanie` VARCHAR(255),'
. ' PRIMARY KEY (`id`)'
. ' )';
MySQL_Query($sql);
MySQL_Close($spojenie);
echo "<b>tabulka bola uspesne vytvorena</b><br />";
echo '<a href="index.php">Pridaj zaznam</a><br />';
echo '<a href="vymaz.php">Vymaz zazanam</a><br />';
echo '<a href="vymaz_all.php">Vymaz vsetko (celu tabulku)</a><br />';
echo '<a href="zobraz.php">Zobraz zaznamy</a><br />';
} while (false);
endif; ?>


zaujimalo by ma, co je toto ` za znak, a ako ho napisem ?
centi
Profil
Co je to za znak presne neviem, ale napises ho ak mas anglicku klavesnicu pomocou klavesy vlavo od jednotky (je tam este aj tilda ~) bez shiftu.
Anonymní
Profil *
````` jj ```
Toto téma je uzamčeno. Odpověď nelze zaslat.