Mi nombre es Matias y estoy comenzando en esto del desarrollo de aplicaciones en PHP.
LLevo varias horas tras el ordenador leyendo y documentandome acerca de como funciona, pero como dicen "La práctica hace al maestro" he decidido comenzar mi primer proyecto para poner a prueba lo que he aprendido.
Estoy desarrollando un programa en el cual, los usuarios pueden realizar operaciones de "prueba" en el mercado bursátil, forex, etc.
(para los que no sabéis de que va: [URL="http://es.wikipedia.org/wiki/Mercado_de_divisas"]Enlace a Wikipedia[/URL])
Hasta ahora, el proyecto consta de 4 páginas.
Op.php (Raíz de la página)
Código PHP:
<?php
//Configuracion para conectar a db.
require_once("config/db.php");
// Carga la clase para nuevas operaciones.
require_once("classes/Newop.php");
//Crea el objeto para nuevas operaciones
$newop = new Newop();
// Muestra el formulario de operaciones
include("views/formforex.php");
db.php (Datos para conexión a db)
Código PHP:
<?php
/* Configuración conexión db*/
define("DB_HOST", "localhost");
define("DB_NAME", "login");
define("DB_USER", "root");
define("DB_PASS", "");
formforex.php (Formulario recolección de datos)
Código PHP:
<?php
if (isset($newop)) {
if ($newop->errors) {
foreach ($newop->errors as $error) {
echo $error;
}
}
if ($newop->messages) {
foreach ($newop->messages as $message) {
echo $message;
}
}
}
?>
Código HTML:
<!-- op form --> </div> <form method="post" action="op.php" name="x"> <label for="select_simbol"> <div align="center">Simbolo</div> </label> <div align="center"> <select name="select_simbol" class="select_simbol" name="simbol" /> <option value ="eurusd">EURUSD</option> <option value ="usdchf">USDCHF</option> </select> <br /> <label for="select_tipo"> <div align="center">Tipo</div> </label> <div align="center"> <select name="select_tipo" class="select_tipo" name="tipo" /> <option value name="buy">Comprar</option> <option value name="sell">Vender</option> </select> <br/> <input type="submit" class="bt" name="newop" value="Ejecutar" /> </div> </form>
newop.php (Guardando datos en db)
Código PHP:
<?php
class Newop
{
private $db_connection = null;
public $errors = array();
public $messages = array();
public function __construct()
{
if (isset($_POST["newop"])) {
$this->ejecutarnuevaop();
}
}
private function ejecutarnuevaop()
{
switch($_POST['select_simbol']){
case "eurusd":
function between($beg, $end, $str) {
$a = explode($beg, $str, 2);
$b = explode($end, $a[1]);
return $beg . $b[0] . $end;}
$url = file_get_contents ("https://es.finance.yahoo.com/q?s=EURUSD=X");
$eleccion = between('<span id="yfs_l10_eurusd=x">', '</span>', $url);
break;
case "usdchf":
$eleccion = "test"; break;
{
// crando conexión a db
$this->db_connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
// Si no hay errores
if (!$this->db_connection->connect_errno) {
$fecha = date('d-m-Y');
$tipo = $_POST['tipo'];
$estado = "abierto";
$capitalrequerido= "4";
$sql = "INSERT INTO operaciones ( Tipo, Cotizacion, Fecha, CapitalRequerido, Estado)
VALUES('" . $Tipo . "', '" . $seleccion . "', '" . $fecha . "','" . $capitalrequerido . "', '" . $estado . "',);";
$query_new_op_insert = $this->db_connection->query($sql);
// si la operacion se realizo con exito
if ($query_new_op_insert) {
$this->messages[] = "Op se ha realizado con exito.";
} else {
$this->errors[] = "Sorry, your op failed. Please go back and try again.";
}
}
else {
$this->errors[] = "Sorry, no database connection.";
}
}
}
}
}
Es desesperante y soy consciente de que puede ser un error muy sencillo (de principiante, vamos...)
Os agradezco de antemano a todos los que tengais tiempo de leer y brindarme alguna solución, yo de momento seguiré buscando en que estoy fallando.