kopek
27.11.2008, 22:40:20
<?php
include ("funkcje.php");
polacz();
$tabela = 'CREATE TABLE $data (login VARCHAR(25), data_log DATETIME, data_wylog DATETIME )';
if($wynik){
Tabela utworzona pomyślnie.';
}
else{
Tabela nie mogła zostać utworzona.';
}
rozlacz();
?>
Tworzy się tabela która nazywa się $data a ja chcę aby nazwa wyglądała na przykład: 2008-11-27.
erix
27.11.2008, 22:49:08
Pytanie z pracy domowej: Jaka jest różnica między pojedynczym a podwójnym cudzysłowem?
kopek
27.11.2008, 23:20:19
Apostrof informuje, że nie pojawią się w nim żadne zmienne, które trzeba by było dodatkowo przetwarzać. Natomiast cudzysłów daje nam sygnał, że takie zmienne mogą się pojawić.
Niestety zamiana apostrofu na cudzysłów nie pomogła.
bobo168
27.11.2008, 23:23:58
<?php
include ("funkcje.php");
polacz();
$tabela = 'CREATE TABLE '.$data.' (login VARCHAR(25), data_log DATETIME, data_wylog DATETIME )';
if($wynik){
Tabela utworzona pomyślnie.';
}
else{
Tabela nie mogła zostać utworzona.';
}
rozlacz();
?>
Powinno działac.
kopek
27.11.2008, 23:27:23
Niestety nie zadziałało. Pojawia się komunikat, że tabela nie mogła zostać utworzona.
erix
27.11.2008, 23:27:53
bobo168
27.11.2008, 23:29:17
No to wpisz sobie:
<?php
?>
i zobacz jak wygląda zapytanie...
kopek
27.11.2008, 23:41:53
Taki wywala błąd na dla zmiennej $tablica:
Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in ... on line 8
Tak wygląda efekt echo $tablica:
CREATE TABLE 2008-11-27 (login VARCHAR(25), data_log DATETIME, data_wylog DATETIME )
Więc wygląda tak jak powinno ale jednak jest jakiś błąd, na którego nie wiem co mam poradzić.
bobo168
27.11.2008, 23:48:22
Heh powód jest bardzo prosty nazwa tabeli nie może zawierac znaku '-'
kopek
27.11.2008, 23:56:41
Usunąłem znak myślnika i data wygląda teraz w następujący sposób: 20081127 (taki zbitek cyferek). Niestety nadal jest ten sam błąd, więc nie sądzę żeby myślnik był problemem.
erix
27.11.2008, 23:58:01
A może by tak nazwę tabeli w cudzysłów wrzucić? ;]
kopek
28.11.2008, 00:01:07
<?php
$tabela = 'CREATE TABLE "$data" (login VARCHAR(25), data_log DATETIME, data_wylog DATETIME )';
?>
Wrzuciłem w cudzysłów ale niestety nie pomogło. Nadal nie tworzy tabeli. Chyba, że źle zrozumiałem podpowiedź z cudzysłowem...
erix
28.11.2008, 00:02:55
Masz teraz niedozwolony znak.

Mi zadziałało zapytanie:
CREATE TABLE `20080124` (login VARCHAR(25), data_log DATETIME, data_wylog DATETIME )
kopek
28.11.2008, 00:10:21
Ciężka sprawa ponieważ mi to zapytanie nie działa.
erix
28.11.2008, 00:12:49
A jak je wywołujesz? Bo u mnie działa bez problemów.
bobo168
28.11.2008, 00:14:10
<?php
include ("funkcje.php");
polacz();
$tabela = 'CREATE TABLE `'.$data.'` (login VARCHAR(25), data_log DATETIME, data_wylog DATETIME )';
if($wynik){
Tabela utworzona pomyślnie.';
}
else{
Tabela nie mogła zostać utworzona.';
}
rozlacz();
?>
Kal dla mnie musi działac, ale nie chce mi sie sprawdzac
kopek
28.11.2008, 00:18:12
Już wiem skąd nieporozumienie... Faktycznie kod bobo168 działa... Pomyliłem znaczek ' z ` i stąd całe zamieszanie...
Dziękuje za wyprostowanie całej sytuacji.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.