Autor | Zpráva | ||
---|---|---|---|
robin Profil * |
Dobrej jsem celkem novy v php a potřeboval bych script ktery by měl vypadat asi takto
$sql = 'CREATE TABLE `.$_SERVER['REMOTE_ADDR'].` (' . ' `id` INT(255) NOT NULL' ' `nazev` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_czech_ci NOT NULL' ' `cena` INT(255) NOT NULL' ' `popisek` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_czech_ci NOT NULL' . ' )'; myslel jsem že by to mohlo fungovat ale nějak se tomu nechce už je to po připojení do databáze. S tím problem není mám ho v externim souboru a u ostatních stránek se připojuje bez problemu… Moderátor panther: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ).
|
||
Radek Cvek Profil |
#2 · Zasláno: 8. 2. 2011, 00:01:01
Je tam někde v tom skriptu i mysql_query($sql); ?
|
||
snake.aas Profil * |
#3 · Zasláno: 8. 2. 2011, 00:03:53
$_SERVER['REMOTE_ADDR'] vrací ip adresu... v názvu tabulky by neměly být tečky... teda jestli si správně pamatuju...
|
||
Radek Cvek Profil |
#4 · Zasláno: 8. 2. 2011, 00:07:17
taky je tam nepořádek s uvozovkami
|
||
Radek Cvek Profil |
#5 · Zasláno: 8. 2. 2011, 00:32:14 · Upravil/a: Radek Cvek
<?php ... // připojení ... $name = $_SERVER['REMOTE_ADDR']; $name = str_replace(".", "_", $name); $sql = "CREATE TABLE ".$name." ( id INT(255) NOT NULL, nazev VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_czech_ci NOT NULL, cena INT(255) NOT NULL, popisek VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_czech_ci NOT NULL )" or die(mysql_error()); mysql_query($sql); ?> |
||
Tori Profil |
#6 · Zasláno: 8. 2. 2011, 08:39:15
robin:
Jen ze zvědavosti: Čeho chcete dosáhnout, resp. na co je tabulka, pojmenovaná podle IP? Nedalo by se použít jen jednu tabulku a přidat do ní sloupeček ip char(31) ? |
||
robin Profil * |
#7 · Zasláno: 8. 2. 2011, 14:37:01
potřebuji každé přidělit originalní jméno a nechtěl jsem jen přiřazovat o jedno vyšší než předchozí protože se do te tabulky bude zapisovat ruzny počet věcí tak potřebuji pro každeho tabulku teda tak mi to přijde nejlepší.... ano
mysql_query($sql); |
||
Radek Cvek Profil |
#8 · Zasláno: 8. 2. 2011, 14:48:41
Já jsem tu svoji úpravu zkoušel a šla mi - osobně to vždycky testuji tak, že dám echo $sql; a pokud tam nevidím zjevnou chybu, můžu ještě vložit ten vypsaný příkaz do phpMyAdmina a zkontrolovat, jestli se to provede nebo to něco nenapíše.
|
||
robin Profil * |
#9 · Zasláno: 8. 2. 2011, 15:12:59
Nechápu ale někde jsem tam musel mit nějakou chybu i po kopírování ale nemohl byt středník či tak něco to by mi vypsalo i přesto že i v phpMyAdmin vše ok i echo bylo v pořadku stále nefunkční... každopádně po vytvoření nového souboru a napsání všech věcí znovu to funguje takže díky..
|
||
Alphard Profil |
#10 · Zasláno: 8. 2. 2011, 17:11:27
robin:
Berete v úvahu, že více lidí může mít stejnou IP a někomu se může naopak měnit? Dynamický počet tabulek obvykle ukazuje na chybný návrh databáze. |
||
Spectator Profil |
#11 · Zasláno: 8. 2. 2011, 19:44:09
Zamyslel bych se nad strukturou tabulek trochu víc, toto je nejspíš dost nešťastné řešení.
|
||
candiess Profil |
#12 · Zasláno: 9. 2. 2011, 18:53:39
asi bych toto řešil přes SID.. zkus o tom pouvažovat, IP není nejlepší řešení :)
|
||
robin Profil * |
#13 · Zasláno: 10. 2. 2011, 15:21:19
já vím že je to nešťastné řešení přemyšlel jsem dlouho jak to zapisovat jen do jedné databaze, ale představte si e-shop bez přihlašování a potřebuji nějakym způsobem udělat košík, toto byla jediná věc která mě napadla jak ho udělat jelikož nikdy nevím kolik věcí si dotyřny koupí nemohu udělat dostatečny počet sloupců v jedné tabulce... jestli mate někdo napad jak to vyřešit efektivněji sem s ním budu jedině rad...
|
||
jenikkozak Profil |
#14 · Zasláno: 10. 2. 2011, 15:37:05
robin:
„potřebuji nějakym způsobem udělat košík“ Obsah košíku můžeš udržovat v sessioně. Až uživatel zadá osobní data, ulož je do tabulky s uživateli. Vybrané položky ulož do zvláštní tabulky, která bude mít dva sloupečky - id uživatele a id produktu. Například. |
||
candiess Profil |
#15 · Zasláno: 10. 2. 2011, 16:52:23
měls říct rovnou že jde o eshop, jáosobně svuj eshop tedka dodělávám a věř že jsem to měl přes tabulky, ale začinály se mi hromadit, tak jsem udělal přes session a nemám problem..:)
např: Přidání produktu $_SESSION['kosik'][$id] = $pocet_kusu; viz: PHP Vrána od něho to vše mám a jsem spokojen :) |
||
Alphard_ Profil * |
#16 · Zasláno: 10. 2. 2011, 20:43:09
robin:
„jelikož nikdy nevím kolik věcí si dotyřny koupí nemohu udělat dostatečny počet sloupců v jedné tabulce“ Což by bylo také naprosto špatně. Přečtěte si něco o normalizaci databáze. Nemůžeze tam data náházet, jak vás napadne, a čekat, že to bude dobře fungovat. Eshop je náročná věc, na učení vhodná jen k tomu, abyste ji po dokončení vyhodil... |
||
robin Profil * |
#17 · Zasláno: 11. 2. 2011, 01:03:13
candiess: díky takhle to bude mnohem lepší i jednoduší
Alphard_: já vím jak je to náročné ale zatím jsem neměl problem jen s košíkem který už mám také ale stejně díky |
||
Časová prodleva: 13 let
|
0