Hola amigos de Espanol Pawno, en este post os enseñare a crear un sistema facil de tickets de soporte.
Para empezar tenemos que tener una tabla donde los usuarios envien los tickets y para eso usen este codigo sql :
una vez creado la tabla podemos ir con la conexion a la base de datos, para eso creen un archivo llamado configs.php con este contenido :
servidor : coloca el host del servidor mysql, si usas tu pc el host sera localhost pero si usas un host mira en la informacion del cpanel o si no la informacion enviada por la administracion de tu host
usuario : el usuario de la base de datos, si usas un host podras crear usuarios facilmente
clave : clave ede la base de datos, bueno esto ya depende de lo que pongas tu
dbnombre : nombre de la base de datos, si usas cualquier host te daran el nombre al crear el usuario o al reves xD
Ahora vamos a crear el archivo donde los usuarios pueden enviar datos a la mysql desde un formulario. Para eso creen un archivo llamado tickets_soporte.php (o pongan el que ustedes quieran) y pongan este contenido dentro :
Bueno explico un poco, pero tampoco ai mucho que explicar xD.
Por ejemplo, ¿que es esto?
Esto es un include, que mas o menos su funcion vendria linkear la pagina en la que esta el include con la pagina puesta en el include, en este caso configs.php
Bueno y el form :
El form en si es muy basico, solo tiene 2 input con los nombre de titulo y email y un area de texto llamado mensaje a y que no se nos olvide el boton enviar ticket. Si observais ariba donde inicia el form esta la accion con su accion "" (osea no tiene ninguna accion en concreto pero en realidad si tiene), eso se usa para no enviar al usuario a otra pagina distinta de la que esta.
Ahora ya que emos explicado un poco lo antes mencionado vamos a pasar a lo siguente. Bueno y que es lo siguente? lo siguente es crear el codigo php para enviar los datos ingresados en el from, y para eso añadan debajo del codigo del from (en la misma pagina) este codigo :
Bueno voy a explicar un poco de lo que va el script para que lo entendais . Lo primero puse un if para verificar si el boton con el nombre enviar esta presionado (no es exactamente eso pero bueno) que aga las demas acciones.
Como tambien aveis podido ver ai estos ifs :
bueno esas tres ifs son para verificar si los campos titulo, email y mensaje estan vacios, y si lo estan muestra un mensaje debajo del todo.
Tambien ai este codigo :
Eso es lo que envia a la base de datos los contenidos del from. Luego dejabo de esto ai otro if que es asi :
Eso es muy simple, lo que hace es verificar el $enviarticket. Yo le puse un else con un mensaje por si falla.
A otra cosa que no se me olvide, si os fijais ai un codigo con esto :
Bueno pues ese codigo es para mostrar el mensaje que nosotros le definimos en el codigo. y por ultimo abajo del todo mostramos el mensaje con :
Bueno ahora para acabar vamos a hacer una pagina que muestre cada uno de los reportes enviados con un orden en if y descendente y con un limite de 10 tickets, y para eso vamos a crear un archivo llamado ver_tickets.php y le insertamos este contenido :
Mas o menos viene explicado ariba pero mejor sera explicaro con mas detalles. Bueno como podeis ver con $seleccionarticket seleccionamos los ultimos 10 tickets enviados y despues con $mostrarticket mostramos en while lo que emos seleccionado con $seleccionarticket y claro por ultimo mostramos el contenido.
Bueno espero que os sirva este tutorial, y pronto posteare muchos mas. Solo que estos dias estube un poco liado y no puede poner.
Para empezar tenemos que tener una tabla donde los usuarios envien los tickets y para eso usen este codigo sql :
- Código:
CREATE TABLE `tickets_soporte` (
`id` INT auto_increment ,
`titulo` VARCHAR( 100 ) NOT NULL DEFAULT 'No Hay Titulo',
`email` VARCHAR( 255 ) NOT NULL DEFAULT 'Desconocido@Desconocido.com',
`mensaje` VARCHAR( 2000 ) NOT NULL DEFAULT 'No Hay Mensaje',
PRIMARY KEY ( `id` )
) ENGINE = MYISAM
una vez creado la tabla podemos ir con la conexion a la base de datos, para eso creen un archivo llamado configs.php con este contenido :
- Código:
<?
$servidor = "Aqui Servidor";
$usuario = "Usuario de la Base de Datos";
$clave = "Contra de la Base de Datos";
$dbnombre = "Nombre de la Base de Datos";
$conecta = mysql_connect($servidor, $usuario, $clave) or die("No se ha podido conectar con el servidor MySQL. Inténtalo mas tarde.");
mysql_select_db($dbnombre, $conecta);
?>
servidor : coloca el host del servidor mysql, si usas tu pc el host sera localhost pero si usas un host mira en la informacion del cpanel o si no la informacion enviada por la administracion de tu host
usuario : el usuario de la base de datos, si usas un host podras crear usuarios facilmente
clave : clave ede la base de datos, bueno esto ya depende de lo que pongas tu
dbnombre : nombre de la base de datos, si usas cualquier host te daran el nombre al crear el usuario o al reves xD
Ahora vamos a crear el archivo donde los usuarios pueden enviar datos a la mysql desde un formulario. Para eso creen un archivo llamado tickets_soporte.php (o pongan el que ustedes quieran) y pongan este contenido dentro :
- Código:
<?
include("configs.php");
?>
<form action="" method="post">
Titulo: <br>
<input type="text" name="titulo" size="20"><br><br>
Email : <br>
<input type="text" name="email" size="20"><br><br>
Mensaje:<br>
<textarea rows="8" name="mensaje" cols="41"></textarea><br><br>
<input type="submit" value="Enviar ticket" name="enviar">
</form>
Bueno explico un poco, pero tampoco ai mucho que explicar xD.
Por ejemplo, ¿que es esto?
- Código:
<?
include("configs.php");
?>
Esto es un include, que mas o menos su funcion vendria linkear la pagina en la que esta el include con la pagina puesta en el include, en este caso configs.php
Bueno y el form :
- Código:
<form action="" method="post">
Titulo: <br>
<input type="text" name="titulo" size="20"><br><br>
Email : <br>
<input type="text" name="email" size="20"><br><br>
Mensaje:<br>
<textarea rows="8" name="mensaje" cols="41"></textarea><br><br>
<input type="submit" value="Enviar ticket" name="enviar">
</form>
El form en si es muy basico, solo tiene 2 input con los nombre de titulo y email y un area de texto llamado mensaje a y que no se nos olvide el boton enviar ticket. Si observais ariba donde inicia el form esta la accion con su accion "" (osea no tiene ninguna accion en concreto pero en realidad si tiene), eso se usa para no enviar al usuario a otra pagina distinta de la que esta.
Ahora ya que emos explicado un poco lo antes mencionado vamos a pasar a lo siguente. Bueno y que es lo siguente? lo siguente es crear el codigo php para enviar los datos ingresados en el from, y para eso añadan debajo del codigo del from (en la misma pagina) este codigo :
- Código:
<?
if($_POST['enviar']) {
if(empty($_POST['titulo'])) {
$InfoEnvio = '<font color="#FF0000"><b>El campo del titulo no tiene que estar vacio. <a href="">Recargar pagina</a>.</b></font>';
}else if(empty($_POST['email'])) {
$InfoEnvio = '<font color="#FF0000"><b>El campo del email no tiene que estar vacio. <a href="">Recargar pagina</a>.</b></font>';
}else if(empty($_POST['mensaje'])) {
$InfoEnvio = '<font color="#FF0000"><b>El campo del mensaje no tiene que estar vacio. <a href="">Recargar pagina</a>.</b></font>';
}else {
$enviarticket = mysql_query("INSERT INTO tickets_soporte (titulo, email, mensaje) values ('".$_POST['titulo']."', '".$_POST['email']."', '".$_POST['mensaje']."')");
if($enviarticket) {
$InfoEnvio = '<font color="#00FF00"><b>Datos ingresados correctamente. <a href="">Recargar pagina</a>.</b></font>';
}else {
$InfoEnvio = '<font color="#FF0000"><b>No se ha podido enviar el ticket de soporte. <a href="">Recargar pagina</a>.</b></font>';
}
}
}
?>
<br>
<?=$InfoEnvio?>
Bueno voy a explicar un poco de lo que va el script para que lo entendais . Lo primero puse un if para verificar si el boton con el nombre enviar esta presionado (no es exactamente eso pero bueno) que aga las demas acciones.
Como tambien aveis podido ver ai estos ifs :
- Código:
if(empty($_POST['titulo']))
if(empty($_POST['email']))
if(empty($_POST['mensaje']))
bueno esas tres ifs son para verificar si los campos titulo, email y mensaje estan vacios, y si lo estan muestra un mensaje debajo del todo.
Tambien ai este codigo :
- Código:
$enviarticket = mysql_query("INSERT INTO tickets_soporte (titulo, email, mensaje) values ('".$_POST['titulo']."', '".$_POST['email']."', '".$_POST['mensaje']."')");
Eso es lo que envia a la base de datos los contenidos del from. Luego dejabo de esto ai otro if que es asi :
- Código:
if($enviarticket)
Eso es muy simple, lo que hace es verificar el $enviarticket. Yo le puse un else con un mensaje por si falla.
A otra cosa que no se me olvide, si os fijais ai un codigo con esto :
- Código:
$InfoEnvio
Bueno pues ese codigo es para mostrar el mensaje que nosotros le definimos en el codigo. y por ultimo abajo del todo mostramos el mensaje con :
- Código:
<?=$InfoEnvio?>
Bueno ahora para acabar vamos a hacer una pagina que muestre cada uno de los reportes enviados con un orden en if y descendente y con un limite de 10 tickets, y para eso vamos a crear un archivo llamado ver_tickets.php y le insertamos este contenido :
- Código:
<?
include("configs.php");
$seleccionarticket = mysql_query("SELECT * FROM tickets_soporte ORDER BY id DESC limit 10");
while($mostrarticket = mysql_query_array($seleccionarticket))
{
?>
Titulo : <?=$mostrarticket['titulo']?><br>
Email del autor : <?=$mostrarticket['email']?><br>
Mensaje : <br>
<?=$mostrarticket['mensaje']?>
<hr><br>
<?
}
?>
Mas o menos viene explicado ariba pero mejor sera explicaro con mas detalles. Bueno como podeis ver con $seleccionarticket seleccionamos los ultimos 10 tickets enviados y despues con $mostrarticket mostramos en while lo que emos seleccionado con $seleccionarticket y claro por ultimo mostramos el contenido.
Bueno espero que os sirva este tutorial, y pronto posteare muchos mas. Solo que estos dias estube un poco liado y no puede poner.
Última edición por 4L3X el Lun Mar 05, 2012 7:15 pm, editado 1 vez (Razón : Se me olvido poner un include xD)