Comunidad de diseño web y desarrollo en internet online

Agregar fecha a Guestbook

Citar            
MensajeEscrito el 18 Jul 2009 06:59 pm
Hola amigos de Cristalab, soy nuevo en este foro y casi nuevo en lo que a Flash y programación en PHP respecta, mi consulta es la siguiente:

Tengo armado un Guestbook en Flash con Action Script 2, funciona todo bien, me publica la info con nombre y todo, pero lo que me falta es que me diga la fecha y hora en que se posteo el mensaje.

Si es necesario posteo los códigos, tanto del PHP como del FLA.

Desde ya muchas gracias.

Por ARC777

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Jul 2009 09:03 pm
Desde php, puedes usar la función date() que retorna la fecha y la hora actual del servidor o sino time() que retorna la marca de tiempo en timestamp.
Suerte.

Por -george-

58 de clabLevel



 

Tartarus

firefox
Citar            
MensajeEscrito el 19 Jul 2009 04:04 pm
Hola, gracias por la pronta respuesta, te comento que soy vastante novato en cuanto programacion en PHP, intente colocar una función date() en en el PHP (al que llamo proccesXML.php) con la función $xmlString = como habia visto en otro foro; me coloca la fecha en el archivo del guestbook pero no lo muestra porque la carga despues del mensaje.

La dirección de mi página es www.radiochampaqui.com.ar ahí esta el ejemplo de como funciona y como se muestran los datos.

Te paso lo que tengo hecho, si tenes tiempo o si alguien me puede dar una mano estaría mas que agradecido. Son 3 archivos, los dos que detallo son los importantes, el otro es un archivo que contiene la data nada mas y se llama guestbook.xml.


proccesXML.php

<?php
$file = fopen("guestbook.xml", "w+") or die("Can't open XML file");
$xmlString = $HTTP_RAW_POST_DATA;
if(!fwrite($file, $xmlString)){
print "Error escribiendo en archivo XML";
}


guestbook.fla (este es bastante largo)

var currPage = 0;
var showAmount = 20;
previous._visible = false;
createMessage._visible = false;
createButton.onRelease = function(){
this._visible = false;
this._parent.createMessage._visible = true;
if (createMessage.nameField.text == ""){
Selection.setFocus(createMessage.nameField);
}
else if (createMessage.messageField.text == ""){
Selection.setFocus(createMessage.messageField);
}
}

// **** Load XML ****************************
myXML = new XML();
myXML.ignoreWhite = true;
receiverXML = new XML();

myXML.onLoad = function(success){
myXML.contentType = "text/xml";
if (success){
this.showXML();
}
else{
trace("Error leyendo archivo XML");
}
}
myIdentifier=Math.round(Math.random()*10000);
myXML.load("guestbook.xml?uniq="+myIdentifier);

receiverXML.onLoad = function(){
this.contentType = "text/xml";
_root.currPage = 0;
this.showXML();
}
createMessage.closeButton.onRelease = function(){
this._parent._visible = false;
createButton._visible = true;
}
createMessage.sendButton.onRelease = function(){
var myName = this._parent.nameField.text;
var myMessage = this._parent.messageField.text;
if (myName == ""){
this._parent.errorField.text = "Por favor escriba nombre";
Selection.setFocus(this._parent.nameField);
}
else if (myMessage == ""){
this._parent.errorField.text = "Por favor deje un mensaje";
Selection.setFocus(this._parent.messageField);
}
else {
myXML.firstChild.appendChild(myXML.createElement("Ingresando"));
myXML.firstChild.lastChild.attributes.myName = myName;
myXML.firstChild.lastChild.appendChild(myXML.createElement("myText"));
myXML.firstChild.lastChild.lastChild.appendChild(myXML.createTextNode(myMessage));
myXML.sendAndLoad("processXML.php", receiverXML);
this._parent._visible = false;
createButton._visible = true;
}
}
XML.prototype.showXML = function(){
myGuestbook.scroll = 1;
myGuestbook.htmlText = "";
var numItems = this.firstChild.childNodes.length;
var firstItem = numItems - (currPage*showAmount);
if (currPage == 0) previous._visible = false;
var lastItem = firstItem - showAmount ;
if (lastItem<=0) {
lastItem = 0;
next._visible = false;
}
myCount.text = "Total de mensajes: " + numItems;
if (firstItem == lastItem+1) nowShowing.text = "Mostrando mensajes " + firstItem;
else nowShowing.text = "Mostrando mensajes " + firstItem + " de " + (lastItem + 1);
for (i=(firstItem-1); i>= lastItem; i--){
myGuestbook.htmlText += "<B>" + this.firstChild.childNodes.attributes.myName + "</B> ... escribió:\n";
[i]//en esta parte antes del ESCRIBIO quisiera que figure la fecha
myGuestbook.htmlText += this.firstChild.childNodes[i].firstChild.firstChild.nodeValue + "\n";
}
}
previous.onRelease = function(){
currPage--;
myXML.showXML();
next._visible = true;
}
next.onRelease = function(){
currPage++;
myXML.showXML();
previous._visible = true;
}





// Desde ya muchas gracias al que pueda ayudarme con esto //
Saludos.

Por ARC777

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2009 04:44 pm
Ok, si usas flash, utiliza un objeto Date para obtener la fecha actual. Aqui hay un ejemplo en las docs de Flash usando la función getDate

Código ActionScript :

var today_date:Date = new Date();
var date_str:String = (today_date.getDate()+"/"+(today_date.getMonth()+1)+"/"+today_date.getFullYear());
trace(date_str);

Por -george-

58 de clabLevel



 

Tartarus

firefox
Citar            
MensajeEscrito el 20 Jul 2009 08:59 pm
Me quedo asi:

for (i=(firstItem-1); i>= lastItem; i--){
myGuestbook.htmlText += "<B>" + this.firstChild.childNodes[i].attributes.myName + "</B>" + "[" +var today_date:Date = new Date(); var date_str:String = (today_date.getDate()+"/"+(today_date.getMonth()+1)+"/"+today_date.getFullYear()); trace(date_str); + "]" +"... escribió:\n";
myGuestbook.htmlText += this.firstChild.childNodes[i].firstChild.firstChild.nodeValue + "\n";
}


Pero me tira este error:
El operador '+' debe ir seguido de un operando


Ayuda por favor!!

Desde ya muchas gracias y perdon por tantas preguntas y molestias.

Por ARC777

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2009 09:12 pm
:?
El código es solo un ejemplo de como obtener la fecha actual. - copiar y pegar no te llevará a ningún lado U_U -
La cadena que estas obteniendo es la que tienes que concatenar a tu resultado.
Revisa lo que estás haciendo.

Saludos.

Por -george-

58 de clabLevel



 

Tartarus

firefox
Citar            
MensajeEscrito el 21 Jul 2009 02:23 am
Ah, bien, gracias otra vez y disculpa mi ignorancia, es que soy muy pero muy novato en esto... ya me pongo a laburar con el código que me pasaste.

Aprovecho tu conocimiento y te consulto, además, como puedo obtener la hora, minutos y segundos para que se muestren a continuación del código de la fecha..

Otra vez mil gracias... saludos.

Por ARC777

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 21 Jul 2009 01:18 pm
Aqui tienes todas los metodos de la Clase Date. Además de detallar que hace cada uno, tiene ejemplos faciles de comprender. :D
Saludos.

Por -george-

58 de clabLevel



 

Tartarus

firefox
Citar            
MensajeEscrito el 07 Sep 2009 07:27 am
Hola de nuevo, bueno, comento que sigo renegando para introducir la fecha en el archivo FLA que tengo, no doy pie con bola en esto, solicito si alguien me puede tirar alguna info de como realizar lo que me aconseja -george-.

Intenté de crear un objet de la fecha y desde ahí obtener la fecha para introducir en el archivo del guestbook pero no me da.

También probé con la función date en el archivo FLA pero estoy encajonado, no se para donde agarrar, agradeceré cualquier ayuda posible.

Gracias de antemano...

Por ARC777

3 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.