Willkommen auf dem Portal für Mediengestalter
|
|
Autor |
Nachricht |
hoplite
Threadersteller
Dabei seit: 12.07.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 03.11.2008 13:27
Titel datum und uhrzeit eintragen in feld "datetime" in |
|
|
hi,
habe grad ein ziemlich nerviges problem an dem ich nun auch schon seit einer woche sitze. es geht um eine texteingabemaske, mit der seitenuser texte hochladen können. hier wird eigentlich datum und uhrzeit gespeichert in einer mysql-datenbank, in einem feld "datetime". aber hier tritt das problem auf: das datum wird richtig gespeichert, nur die uhrzeit ist immer bei 00:00, sieht dann als ergebniss zb. so aus: 03-11-08 00:00
das blöde ist, das ganze ist innerhalb einer typo3-extension verpackt, weswegen es 1. nicht ganz leicht ist selber durchzusteigen, wie die abläufe programmiert sind und 2. da die ext scheinbar ncith sehr verbreitet ist und auch der author bisher nciht zu erreichen war, da kompetete unterstützung zu bekommen.
habe mittlerweile in der php-datei der ext den teil gefunden, wo die datenbankl beschrieben wird:
Code: | if (strlen($row['crdate'])<1) {
$row['datetime'] = date('d.m.Y',time('H:i'));
$row['related'] = '942';
$row['tstamp'] = $timestamp = time(d.m.Y);
} |
es geht wie man ja sieht um die zweite zeile (anderen beiden teastweise, funktionieren). bei diesem beispiel wird das richtige datum und als uhrzeit generell 00:00 eingetragen. wenn ich die zeile ändere in $row['datetime'] = time();
wird in "datetime" garnichts! eingetragen. bin nun etwas ratlos... es geht mir eigentlich nur darum, das das feld datetime richtig gefüllt wird, kann von mir aus auch ne "dirty" lösung sein, solange es funktioniert. hat jemand eine idee?
THX & LG
|
|
|
|
|
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 51
Geschlecht:
|
Verfasst Mo 03.11.2008 13:34
Titel
|
|
|
und wo wird da ne db beschrieben? das query was abgesetzt wird, wäre für eine passende antwort auch noch wichtig...
|
|
|
|
|
Anzeige
|
|
|
Pixelpole
Dabei seit: 25.10.2004
Ort: Trier
Alter: 38
Geschlecht:
|
Verfasst Mo 03.11.2008 13:41
Titel
|
|
|
Ach du kacke...
probier das mal so:
Code: |
if (strlen($row['crdate'])<1) {
$row['datetime'] = date('d.m.Y H:i');
$row['related'] = '942';
$row['tstamp'] = $timestamp = time();
}
|
Wofür wird eigentlich die Variable $timestamp gebraucht? ist es unbedingt notwendig diese noch zu erstellen?
schau dir mal in der doku an was der befehl time macht
mir ist auch nicht klar wieso man timestamp und datetime speichert?
Wer auch immer diese extension geschrieben hat...NEHMT IHM UM GOTTES WILLEN DIE TASTATUR WEG!
@pixelpapst: sieh dir mal den code an. Da scheitert es schon übelst an der Variablenfüllung...
Zuletzt bearbeitet von Pixelpole am Mo 03.11.2008 13:43, insgesamt 2-mal bearbeitet
|
|
|
|
|
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 51
Geschlecht:
|
Verfasst Mo 03.11.2008 13:44
Titel
|
|
|
Pixelpole hat geschrieben: |
@pixelpapst: sieh dir mal den code an. Da scheitert es schon übelst an der Variablenfüllung... |
glatt übersehen,....
|
|
|
|
|
hoplite
Threadersteller
Dabei seit: 12.07.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 03.11.2008 13:48
Titel
|
|
|
hi,
@pp da bin ich überfragt. hier mal die komplette php (ist relativ kurz)
Code: | require_once(t3lib_extMgm::extPath('sg_zfelib').'class.tx_sgzfelib.php');
require_once(t3lib_extMgm::extPath('sg_zfelib').'class.txsg_pibase.php');
class tx_sgnewsplus_pi1 extends txsg_pibase {
var $prefixId = "tx_sgnewsplus_pi1"; // Same as class name
var $scriptRelPath = "pi1/class.tx_sgnewsplus_pi1.php"; // Path to this script relative to the extension dir.
var $extKey = "sg_newsplus"; // The extension key.
var $importName = 'news_import';
var $mainTable = 'tt_news';
var $mainJoin = ''; //', tx_sgdb_region.name AS regionname, tx_sgdb_rating.rating AS ratingname';
var $mainJoinTable = ''; //' LEFT JOIN tx_sgdb_cc ON tx_sgaddress_address.country=tx_sgdb_cc.uid LEFT JOIN tx_sgdb_region ON tx_sgaddress_address.region=tx_sgdb_region.uid LEFT JOIN tx_sgdb_rating ON tx_sgaddress_address.rating=tx_sgdb_rating.uid';
var $catTable = 'tt_news_cat';
var $subcatTable = '';
var $winName = 'News';
/**
* [Describe function...]
*
* @param [type] $pluginMode: ...
* @return [type] ...
*/
function switchPluginMode ($pluginMode) {
$tmp = t3lib_div::GPvar('tx_ttnews');
if (is_array($tmp)) {
//t3lib_div::debug(Array('set ?'=>t3lib_div::GPvar('tx_ttnews'), 'File:Line'=>__FILE__.':'.__LINE__));
if (intval($tmp['tt_news'])>0) {
$GLOBALS['_POST']['todo']['uid'] = $tmp['tt_news'];
$GLOBALS['_GET']['uid'] = $tmp['tt_news'];
$this->PCA['todo']['Uid'] = $tmp['tt_news'];
}
if (intval($tmp['backPid'])>0) {
//t3lib_div::debug(Array('referrer'=>t3lib_div::getIndpEnv('HTTP_REFERER'), 'File:Line'=>__FILE__.':'.__LINE__));
$this->PCA['todo']['BackUrl'] = t3lib_div::getIndpEnv('HTTP_REFERER');
}
}
return (parent::switchPluginMode ($pluginMode));
}
function localCheckDbRowForSave ($dbName,&$row,&$PCA,&$errors) {
$errorMode = false;
if (strlen($row['crdate'])<1) {
$row['datetime'] = date('d.m.Y',time('H:i'));
$row['related'] = '942';
$row['tstamp'] = time(d.m.Y);
}
if (strlen($row['datetime'])<1) {
if (strlen($row['starttime'])<1) {
$row['datetime'] = $row['crdate'];
} else {
$row['datetime'] = $row['starttime'];
}
}
if (strlen($row['archivedate'])<1) {
$row['archivedate'] = date('d.m.Y',mktime(0, 0, 0, date("m",time())+1, date("d",time()), date("Y",time())) );
}
return ($errorMode);
}
}
if (defined("TYPO3_MODE") && $TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/sg_newsplus/pi1/class.tx_sgnewsplus_pi1.php"]) {
include_once($TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/sg_newsplus/pi1/class.tx_sgnewsplus_pi1.php"]);
} |
@pixelpole danke für deine antwort. leider funktioniert es mit dem beispiel auch nicht. die line mit tstamp hab ich wie schon geschrieben nachträglich selber zum testen hinzugefügt.
Zuletzt bearbeitet von hoplite am Mo 03.11.2008 13:50, insgesamt 1-mal bearbeitet
|
|
|
|
|
Pixelpole
Dabei seit: 25.10.2004
Ort: Trier
Alter: 38
Geschlecht:
|
Verfasst Mo 03.11.2008 13:57
Titel
|
|
|
hmm,
ich kenne mich jetzt leidern nicht sonderlich mit Typo3 aus und weiss daher nicht wie das ganze extensionsystem funktioniert.
setz mal bitte diese Zeile vor die zeile mit return $errorMode:
Und poste mal was ausgeben wird.
|
|
|
|
|
hoplite
Threadersteller
Dabei seit: 12.07.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 03.11.2008 14:06
Titel
|
|
|
ok, hab ich eingefügt, hier die ausgabe:
Code: | Array ( [hidden] => 1 [author] => GermanBlogga [author_email] => [type] => 0 [layout] => 0 [category] => 277 [title] => ugugui [abstract] => [short] => iughiugu [bodytext] => gzugzu [starttime] => [archivedate] => 02.01.2009 [endtime] => [image] => [imagecaption] => [banner] => [bannerlinks] => [news_files] => [related] => )
Warning: Cannot modify header information - headers already sent by (output started at /kunden/host.com/xxx/xxx/xxx/typo3conf/ext/sg_newsplus/pi1/class.tx_sgnewsplus_pi1.php:138) in /kunden/host.com/xxx/xxx/xxx/typo3/sysext/cms/tslib/class.tslib_fe.php on line 2898 |
|
|
|
|
|
hoplite
Threadersteller
Dabei seit: 12.07.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 03.11.2008 14:17
Titel
|
|
|
was mich wundert ist das das feld "datetime" gar nicht aufgelistet wird.
|
|
|
|
|
|
|
|
Ähnliche Themen |
[Programmierung] Uhrzeit und Datum als Text einbinden
Datum automatisch eintragen
XML Schnittstelle in mysql Datenbank eintragen
Auswahlliste mit Mehrfachauswahl in Datenbank eintragen
PDF - Datum aus Feld auslesen und weiterrechnen...
zu kleines Feld in strato-Datenbank
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|