Foros del Web » Programando para Internet » PHP »

ayuda en el reg.php xfavor

Estas en el tema de ayuda en el reg.php xfavor en el foro de PHP en Foros del Web. wenas jente a ver si me podeis echar una mano dios estoy muy liado miren esto va de un juego donde al registrase (aora pondre ...
  #1 (permalink)  
Antiguo 21/05/2008, 14:26
 
Fecha de Ingreso: abril-2007
Mensajes: 36
Antigüedad: 17 años
Puntos: 0
ayuda en el reg.php xfavor

wenas jente a ver si me podeis echar una mano dios estoy muy liado miren esto va de un juego donde al registrase (aora pondre los codigos mas abajo) teneis que poner un nombre de usuario y contraseña y edad y nombre de tu casa y sexo.estos datos se enviaran por correo electronico al jugador.

entonces queria añadir algo para tambien dar a elegir la poscion donde quiere que se cree la casa.

por que con este codigo que tengo sale aleatoria la casa en cualquier lugar y asi cuando pongan todos los datos tambien puedan elegir donde la kieren poscion.

y si ya esta ocupada ese lugar que salte un error y que pueda elegir otro lugar.

miren aki esta los 3 codigos uno es el reg.php y el otro es el template registry_form.tpl y ahy otro mas que es el reg.mo donde esta todo el lenguaje de la pagina reg

aki reg.php
Cita:
<?php

/**
* reg.php
*
* @version 1.1
* @copyright 2008 by serllidance
*/

define('INSIDE' , true);
define('INSTALL' , false);

includeLang('reg');

function sendpassemail($emailaddress, $password) {
global $lang;

$parse['gameurl'] = GAMEURL;
$parse['password'] = $password;
$email = parsetemplate($lang['mail_welcome'], $parse);
$status = mymail($emailaddress, $lang['mail_title'], $email);
return $status;
}

function mymail($to, $title, $body, $from = '') {
$from = trim($from);

if (!$from) {
$from = ADMINEMAIL;
}

$rp = ADMINEMAIL;

$head = '';
$head .= "Content-Type: text/html \r\n";
$head .= "charset: iso-8859-1 \r\n";
$head .= "Date: " . date('r') . " \r\n";
$head .= "Return-Path: $rp \r\n";
$head .= "From: $from \r\n";
$head .= "Sender: $from \r\n";
$head .= "Reply-To: $from \r\n";
$head .= "Organization: $org \r\n";
$head .= "X-Sender: $from \r\n";
$head .= "X-Priority: 3 \r\n";
$body = str_replace("\r\n", "\n", $body);
$body = str_replace("\n", "\r\n", $body);

return mail($to, $title, $body, $head);
}

if ($_POST) {
$errors = 0;
$errorlist = "";

$_POST['email'] = strip_tags($_POST['email']);
if (!is_email($_POST['email'])) {
$errorlist .= "\"" . $_POST['email'] . "\" " . $lang['error_mail'];
$errors++;
}

if (!$_POST['planet']) {
$errorlist .= $lang['error_planet'];
$errors++;
}

if (preg_match("/[^A-z0-9_\-]/", $_POST['hplanet']) == 1) {
$errorlist .= $lang['error_planetnum'];
$errors++;
}

if (!$_POST['character']) {
$errorlist .= $lang['error_character'];
$errors++;
}

if (strlen($_POST['passwrd']) < 4) {
$errorlist .= $lang['error_password'];
$errors++;
}

if (preg_match("/[^A-z0-9_\-]/", $_POST['character']) == 1) {
$errorlist .= $lang['error_charalpha'];
$errors++;
}

if ($_POST['rgt'] != 'on') {
$errorlist .= $lang['error_rgt'];
$errors++;
}

// aja
$ExistUser = doquery("SELECT `username` FROM {{table}} WHERE `username` = '". mysql_escape_string($_POST['character']) ."' LIMIT 1;", 'users', true);
if ($ExistUser) {
$errorlist .= $lang['error_userexist'];
$errors++;
}

// aja 2
$ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '". mysql_escape_string($_POST['email']) ."' LIMIT 1;", 'users', true);
if ($ExistMail) {
$errorlist .= $lang['error_emailexist'];
$errors++;
}

if ($_POST['sex'] != '' &&
$_POST['sex'] != 'F' &&
$_POST['sex'] != 'M') {
$errorlist .= $lang['error_sex'];
$errors++;
}

if ($errors != 0) {
message ($errorlist, $lang['Register']);
} else {
$newpass = $_POST['passwrd'];
$UserName = CheckInputStrings ( $_POST['character'] );
$UserEmail = CheckInputStrings ( $_POST['email'] );
$UserPlanet = CheckInputStrings ( $_POST['planet'] );

$md5newpass = md5($newpass);
// Creation de l'utilisateur
$QryInsertUser = "INSERT INTO {{table}} SET ";
$QryInsertUser .= "`username` = '". mysql_escape_string(strip_tags( $UserName )) ."', ";
$QryInsertUser .= "`email` = '". mysql_escape_string( $UserEmail ) ."', ";
$QryInsertUser .= "`email_2` = '". mysql_escape_string( $UserEmail ) ."', ";
$QryInsertUser .= "`sex` = '". mysql_escape_string( $_POST['sex'] ) ."', ";
$QryInsertUser .= "`id_planet` = '0', ";
$QryInsertUser .= "`register_time` = '". time() ."', ";
$QryInsertUser .= "`new_message` = '1', ";
$QryInsertUser .= "`password`='". $md5newpass ."';";
doquery( $QryInsertUser, 'users');

// On cherche le numero d'enregistrement de l'utilisateur fraichement créé
$NewUser = doquery("SELECT `id` FROM {{table}} WHERE `username` = '". mysql_escape_string($_POST['character']) ."' LIMIT 1;", 'users', true);
$iduser = $NewUser['id'];

//Mensaje de bienvenida
$msgwelcome = addslashes ( $game_config['mp_bienvenue']);

// Envoie du message de bienvenue
$QryInsertUser = "INSERT INTO {{table}} SET ";
$QryInsertUser .= "`message_id` = '', ";
$QryInsertUser .= "`message_owner` = '" . $iduser . "', ";
$QryInsertUser .= "`message_sender` = '0', ";
$QryInsertUser .= "`message_time` = '" . time() . "', ";
$QryInsertUser .= "`message_type` = '0', ";
$QryInsertUser .= "`message_from` = 'Administrador', ";
$QryInsertUser .= "`message_subject` = 'Bienvenido !', ";
$QryInsertUser .= "`message_text` = '" . $msgwelcome . "';";
doquery( $QryInsertUser, 'messages');

// Recherche d'une place libre !
$LastSettedGalaxyPos = $game_config['LastSettedGalaxyPos'];
$LastSettedSystemPos = $game_config['LastSettedSystemPos'];
$LastSettedPlanetPos = $game_config['LastSettedPlanetPos'];
while (!isset($newpos_checked)) {
for ($Galaxy = $LastSettedGalaxyPos; $Galaxy <= MAX_GALAXY_IN_WORLD; $Galaxy++) {
for ($System = $LastSettedSystemPos; $System <= MAX_SYSTEM_IN_GALAXY; $System++) {
for ($Posit = $LastSettedPlanetPos; $Posit <= 4; $Posit++) {
$Planet = round (rand ( 4, 12) );

switch ($LastSettedPlanetPos) {
case 1:
$LastSettedPlanetPos += 1;
break;
case 2:
$LastSettedPlanetPos += 1;
break;
case 3:
if ($LastSettedSystemPos == MAX_SYSTEM_IN_GALAXY) {
$LastSettedGalaxyPos += 1;
$LastSettedSystemPos = 1;
$LastSettedPlanetPos = 1;
break;
} else {
$LastSettedPlanetPos = 1;
}
$LastSettedSystemPos += 1;
break;
}
break;
}
break;
}
break;
}

$QrySelectGalaxy = "SELECT * ";
$QrySelectGalaxy .= "FROM {{table}} ";
$QrySelectGalaxy .= "WHERE ";
$QrySelectGalaxy .= "`galaxy` = '". $Galaxy ."' AND ";
$QrySelectGalaxy .= "`system` = '". $System ."' AND ";
$QrySelectGalaxy .= "`planet` = '". $Planet ."' ";
$QrySelectGalaxy .= "LIMIT 1;";
$GalaxyRow = doquery( $QrySelectGalaxy, 'galaxy', true);

if ($GalaxyRow["id_planet"] == "0") {
$newpos_checked = true;
}

if (!$GalaxyRow) {
CreateOnePlanetRecord ($Galaxy, $System, $Planet, $NewUser['id'], $UserPlanet, true);
$newpos_checked = true;
}
if ($newpos_checked) {
doquery("UPDATE {{table}} SET `config_value` = '". $LastSettedGalaxyPos ."' WHERE `config_name` = 'LastSettedGalaxyPos';", 'config');
doquery("UPDATE {{table}} SET `config_value` = '". $LastSettedSystemPos ."' WHERE `config_name` = 'LastSettedSystemPos';", 'config');
doquery("UPDATE {{table}} SET `config_value` = '". $LastSettedPlanetPos ."' WHERE `config_name` = 'LastSettedPlanetPos';", 'config');
}
}
// Recherche de la reference de la nouvelle planete (qui est unique normalement !
$PlanetID = doquery("SELECT `id` FROM {{table}} WHERE `id_owner` = '". $NewUser['id'] ."' LIMIT 1;", 'planets', true);

// Mise a jour de l'enregistrement utilisateur avec les infos de sa planete mere
$QryUpdateUser = "UPDATE {{table}} SET ";
$QryUpdateUser .= "`id_planet` = '". $PlanetID['id'] ."', ";
$QryUpdateUser .= "`current_planet` = '". $PlanetID['id'] ."', ";
$QryUpdateUser .= "`galaxy` = '". $Galaxy ."', ";
$QryUpdateUser .= "`system` = '". $System ."', ";
$QryUpdateUser .= "`planet` = '". $Planet ."' ";
$QryUpdateUser .= "WHERE ";
$QryUpdateUser .= "`id` = '". $NewUser['id'] ."' ";
$QryUpdateUser .= "LIMIT 1;";
doquery( $QryUpdateUser, 'users');

// Mise a jour du nombre de joueurs inscripts
doquery("UPDATE {{table}} SET `config_value` = `config_value` + '1' WHERE `config_name` = 'users_amount' LIMIT 1;", 'config');

$Message = $lang['thanksforregistry'];
if (sendpassemail($_POST['email'], "$newpass")) {
$Message .= " (" . htmlentities($_POST["email"]) . ")";
} else {
$Message .= " (" . htmlentities($_POST["email"]) . ")";
$Message .= "<br><br>". $lang['error_mailsend'] ." <b>" . $newpass . "</b>";
}
message( $Message, $lang['reg_welldone']);
}
} else {
// Afficher le formulaire d'enregistrement
$parse = $lang;
$parse['servername'] = $game_config['game_name'];
$page = parsetemplate(gettemplate('registry_form'), $parse);

display ($page, $lang['registry'], false);
}

// -----------------------------------------------------------------------------------------------------------
// version by serllidance

?>
  #2 (permalink)  
Antiguo 21/05/2008, 14:27
 
Fecha de Ingreso: abril-2007
Mensajes: 36
Antigüedad: 17 años
Puntos: 0
Respuesta: ayuda en el reg.php xfavor

aki registry_form.tpl
Cita:
<center>
<br/><br/>
<h2><font size="+3">{registry}</font><br>...</h2>
<form action="" method="post">
<table width="438">
<tbody>
<tr>
<td colspan="2" class="c"><b>{form}</b></td>
</tr><tr>
<th width="293">{GameName}</th>
<th width="293"><input name="character" size="20" maxlength="20" type="text" onKeypress="
if (event.keyCode==60 || event.keyCode==62) event.returnValue = false;
if (event.which==60 || event.which==62) return false;"></th>
</tr>
<tr>
<th>{neededpass}</th>
<th><input name="passwrd" size="20" maxlength="20" type="password" onKeypress="
if (event.keyCode==60 || event.keyCode==62) event.returnValue = false;
if (event.which==60 || event.which==62) return false;"></th>
</tr>
<tr>
<th>{E-Mail}</th>
<th><input name="email" size="20" maxlength="40" type="text" onKeypress="
if (event.keyCode==60 || event.keyCode==62) event.returnValue = false;
if (event.which==60 || event.which==62) return false;"></th>
</tr>
<tr>
<th>{MainPlanet}</th>
<th><input name="planet" size="20" maxlength="20" type="text" onKeypress="
if (event.keyCode==60 || event.keyCode==62) event.returnValue = false;
if (event.which==60 || event.which==62) return false;"></th>
</tr>
<tr>
<th>{Sex}</th>
<th><select name="sex">
<option value="">{Undefined}</option>
<option value="M">{Male}</option>
<option value="F">{Female}</option>
</select></th>
</tr>
<tr>
<td height="20" colspan="2"></td>
</tr>
<tr>
<th><input name="rgt" type="checkbox">
{accept}</th>
<th><input name="submit" type="submit" value="{signup}"></th>
</tr>
</table>
</form>
</center>
por ultimo el reg.mo
Cita:
<?php
//é à ó ú ñ

if (!defined('INSIDE')) {
die("attemp hacking");
}

// Registration form
$lang['registry'] = 'Registro';
$lang['form'] = 'Formulario';
$lang['Register'] = 'Registro';
$lang['Undefined'] = '- indefinido -';
$lang['Male'] = 'Hombre';
$lang['Female'] = 'Mujer';
$lang['Multiverse'] = 'Serlli';
$lang['E-Mail'] = 'Direccion correo electronico';
$lang['MainPlanet'] = 'Nombre de la casa';
$lang['GameName'] = 'Login';
$lang['Sex'] = 'Sexo';
$lang['accept'] = 'acepto el Reglamento';
$lang['signup'] = 'Registrarse ';
$lang['neededpass'] = 'Password';

// Send
$lang['mail_welcome'] = 'Bienvenido a ....,<br>
Tu contraseña es: {password}<br><br>
<br><br>
El equipo TheWarSerlli.<br>
{gameurl}';
$lang['mail_title'] = 'Bienvenido a ...';
$lang['thanksforregistry'] = 'Gracias por registrarse! ahora ya eres mienbro de ...., Su correo quedo registrado.';

// Errors
$lang['error_mail'] = 'Correo electronico invalido!<br />';
$lang['error_planet'] = 'Error en el nombre de la casa.<br />';
$lang['error_hplanetnum'] = 'Debe utilizar caracteres alfanumerico para su nombre del planeta!<br />';
$lang['error_character'] = 'Error en el nombre del jugador!<br />';
$lang['error_charalpha'] = 'El pseudo debe componerse de caracter alfanumerico!<br />';
$lang['error_password'] = 'La contraseña debe tener 4 caracteres como minimo!<br />';
$lang['error_rgt'] = 'Debe aceptar las condiciones de uso.<<br />';
$lang['error_userexist'] = 'Este nombre de jugador ya existe!<br />';
$lang['error_emailexist'] = 'Ya se esta utilizando este correo electronico!<br />';
$lang['error_sex'] = 'Error en el sexo!<br />';
$lang['error_mailsend'] = 'Un error se produjo en el registro! Su contraseña es:';
$lang['reg_welldone'] = 'Registro terminado';

// Created by serllidance. All rights reversed (C) 2007
?>
a ver si me pueden ayudar a crearlo por que no tengo ni idea de como acerlo si necesitan algo mas diganmelo y aki se lo ponde lo primero muxisimas gracias a todos a ver si entre todo m exais una mano ;)
  #3 (permalink)  
Antiguo 22/05/2008, 07:29
 
Fecha de Ingreso: abril-2007
Mensajes: 36
Antigüedad: 17 años
Puntos: 0
Respuesta: ayuda en el reg.php xfavor

nadie puede echarme una mano :( ?¿?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:36.