Agregando desde php mysql

Iniciado por egiptoelcairo, 4 Junio 2012, 20:57 PM

0 Miembros y 1 Visitante están viendo este tema.

egiptoelcairo

Estoy intentando agregar unos datos a una tabla mysql con el usuario registrado, pero no consigo encontrar el error, es decir cada usuario corresponde un "id" respetando el mismo sumarle +100 de valor en la tabla aqui les dejo el codigo

<?php account::isNotLoggedIn(); ?>
<div class='box_two_title'>texto</div>
<?php
connect
::selectDB('nombrebasededatosde account_data');
while(
$row mysql_fetch_assoc($result)){
     
$acct_id account::getAccountID($_SESSION['cw_user']);
     
$craft_db $row['nombrebasededatosde account_data'];
   

    
connect::selectDB($craft_db);
    
$result2 mysql_query('SELECT account_data FROM nombrebasededatosde account_data WHERE account='.$acct_id);
    while(
$row2 mysql_fetch_assoc($result2)) {
        
account::isNotLoggedIn();
        
$acct_id account::getAccountID($_SESSION['cw_user']);
        
$sql "UPDATE account_data SET dp = dp + 100 WHERE id = ".$acct_id;
        
mysql_query$sql$db );
    }
}
?>



engel lex

una pregunta un poco fuera de la tuya, por que usas "connect::"

ahh por cierto, no tienes linea de conexión pasando los parámetros para conectarte al mysql
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

egiptoelcairo

#2
Te refieres a esto pueds iluminarme, soy un novatio en esto de programar

<?
$direccion = 'localhost';
$usuario = 'usuario';
$password = 'password';
$db=mysql_connect($direccion,$usuario,$password);
?>

engel lex

realmente ya que esa es la sintaxis regular que siempre he visto, muy raramente he visto que se maneje como extension a los objetos usando ::

esa linea si es esencial, ya que es la conexión,

aquí solo le indicas la db que va a usar
Código (php) [Seleccionar]

connect::selectDB('nombrebasededatosde account_data');



usa algo como

Código (php) [Seleccionar]

$direccion = 'localhost';
$usuario = 'usuario';
$password = 'password';
$db=mysql_connect($direccion,$usuario,$password);

mysql_ select_ db("'nombrebasededatosde account_data');



y de donde sacas estos métodos? tienes un objeto declarándolos?
Código (php) [Seleccionar]

account::isNotLoggedIn();
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

egiptoelcairo

Estoy modificando una web si pongo esa sintaxis al principio del codigo no deja acceder a la pagina si no estas logueado antes.
he probado este codigo pero tampo me funciona no detecta el usuario.

<div class='box_two_title'>texto</div>
<?php
$direccion 
'localhost';
$usuario 'root';
$password 'contraseña';
$db=mysql_connect($direccion,$usuario,$password);

mysql_select_db("basededatosdeaccount_data",$craft_db);

     
$acct_id account::getAccountID($_SESSION['cw_user']);
     
$sql "UPDATE account_data SET dp = dp + 100 WHERE id = ".$acct_id;
     
mysql_query$sql$db );
?>

engel lex

CitarEstoy modificando una web si pongo esa sintaxis al principio del codigo no deja acceder a la pagina si no estas logueado antes.

es porque seguramente ya la pagina arriba tiene otro método que está chocando, chequea que puede ser

he probado este codigo pero tampo me funciona no detecta el usuario.

si ya la pagina tiene esas funciones, entonces si está chocando :s

chequea arriba el código a  que pasa :s pensé que seria solo solo eso que tenias de código, pero si hay una serie de cosas arriba tienes que chequear de donde viene que :s
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

egiptoelcairo

#6
mira este codigo funciona perfectamente  mira ver si ves el error este codigo si asocia el usuario con el id, no consigo encontrar que es lo que esta bloqueando la operacion.

<?php account::isNotLoggedIn(); ?>
<div class='box_two_title'>Character</div>
<?php 

$service 
"teleport";

if(
$GLOBALS['service'][$service]['price']==0
      echo 
'<span class="attention">texto</span>';
else
?>

<span class="attention">Teleportation costs
<?php 
echo $GLOBALS['service'][$service]['price'].' '.website::convertCurrency($GLOBALS['service'][$service]['currency']); ?>
</span>
<?php 
if($GLOBALS['service'][$service]['currency']=="vp")
echo "<span class='currency'>Vote Points: ".account::loadVP($_SESSION['cw_user'])."</span>";
elseif(
$GLOBALS['service'][$service]['currency']=="dp")
echo "<span class='currency'>".$GLOBALS['donation']['coins_name'].": ".account::loadDP($_SESSION['cw_user'])."</span>";
?>

<hr/>
<h3 id="choosechar">Character</h3>
<?php
connect
::selectDB('webdb');
$result mysql_query('SELECT char_db,name FROM realms ORDER BY id ASC');
while(
$row mysql_fetch_assoc($result)) 
{
         
$acct_id account::getAccountID($_SESSION['cw_user']);
 $realm $row['name'];
 $char_db $row['char_db'];
          
connect::selectDB($char_db);
$result mysql_query('SELECT name,guidl,online FROM characters WHERE account='.$acct_id);
while($row mysql_fetch_assoc($result)) {
?>

   <div class='charBox' style="cursor:pointer;" id="<?php echo $row['guid'].'*'.$char_db?>"<?php if ($row['online'] != 1) { ?>
   onclick="selectChar('<?php echo $row['guid'].'*'.$char_db?>',this)"<?php ?>>
   <table>
       <tr>
               <td>
               <?php if(!file_exists('styles/global/images/portraits/'.$row['gender'].'-'.$row['race'].'-'.$row['class'].'.gif'))
       echo '<img src="styles/'.$GLOBALS['template']['path'].'/images/unknown.png" />';
   else 
   { ?>

               <img src="styles/global/images/portraits/
<?php echo $row['gender'].'-'.$row['race'].'-'.$row['class']; ?>.gif" border="none">
                   <?php ?>
               </td>
               
               <td><h3><?php echo $row['name']; ?></h3>
                   Level <?php echo $row['level']." ".character::getRace($row['race'])." ".character::getGender($row['gender']).
                    
" ".character::getClass($row['class']); ?>
<br/>
                   Realm: <?php echo $realm?>
                   <?php if($row['online']==1)
                   echo 
"<br/><span class='red_text'>Please log out before trying to teleport.</span>";?>

               </td>
           </tr>                        
</table>
</div>  
<?php ?>
<br/>&nbsp;
   <span id="teleport_to" style="display:none;">  
   
   </span>              
<?php

engel lex

lo que quiero decir es que hay cosas ahi de las que no tengo referencia y no son standar en php hasta donde conozco, que provienen de algun framework o clases propias... y cosas como

account::loadVP

desconozco completamente su uso o de donde viene... tienes que analizar tu esas secciones a ver el porque choca el código
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

HdM

Buenas.

Citarconnect::selectDB('nombrebasededatosde account_data');

¿Esa es la bd correcta a la que debes conectar?. Luego veo que utilizas:

Citarmysql_select_db("basededatosdeaccount_data",$craft_db);

Luego en otro fragmento de code dónde dices que si funciona, pones:

Citarconnect::selectDB('webdb');

Saludos.


- Nice to see you again -

egiptoelcairo

#9
este codigo es mas especifico modifica el mismo valor dp  pero con la variable $globals

yo no quiero utilizar esa variable solo colocar 100 y que se ejecute


<?php
define
('INIT_SITE'TRUE);
require(
'../configuration.php');
require(
'connect.php');

$send 'cmd=_notify-validate';

 foreach (
$_POST as $key => $value)
 {
     if(
get_magic_quotes_gpc() == 1)
         
$value urlencode(stripslashes($value));
     else
         
$value urlencode($value);
 
     
$send .= "&$key=$value";
 }
 
 
$head .= "POST /cgi-bin/webscr HTTP/1.0\r\n";
 
$head .= "Content-Type: application/x-www-form-urlencoded\r\n";
 
$head .= 'Content-Length: '.strlen($send)."\r\n\r\n";
 
$fp fsockopen ('www.paypal.com'80$errno$errstr30);
 
 
connect::selectDB('webdb');

 if (
$fp !== false)
 {
    
fwrite($fp$head.$send);
    
$resp stream_get_contents($fp);

    
$resp end(explode("\n"$resp));
 
$item_number mysql_real_escape_string($_POST['item_number']);
$item_name mysql_real_escape_string($item_number['0']);
$mc_gross mysql_real_escape_string($_POST['mc_gross']);
$txn_id mysql_real_escape_string($_POST['txn_id']);
$payment_date mysql_real_escape_string($_POST['payment_date']);
$first_name mysql_real_escape_string($_POST['first_name']);
$last_name mysql_real_escape_string($_POST['last_name']);
$payment_type mysql_real_escape_string($_POST['payment_type']);
$payer_email mysql_real_escape_string($_POST['payer_email']);
$address_city mysql_real_escape_string($_POST['address_city']);
$address_country mysql_real_escape_string($_POST['address_country']);
$custom mysql_real_escape_string($_POST['custom']);
$mc_fee mysql_real_escape_string($_POST['mc_fee']);
$fecha date("Y-m-d");
$payment_status mysql_real_escape_string($_POST['payment_status']);
$reciever mysql_real_escape_string($_POST['receiver_email']);  

if (
$resp == 'VERIFIED')
{
if ($reciever!=$GLOBALS['donation']['paypal_email'])
exit();

mysql_query("INSERT INTO payments_log(userid,paymentstatus,buyer_email,firstname,lastname,city,country,mc_gross,mc_fee,itemname,paymenttype,
paymentdate,txnid,pendingreason,reasoncode,datecreation) values ('"
.$custom."','".$payment_status."','".$payer_email."',
'"
.$first_name."','".$last_name."','".$address_city."','".$address_country."','".$mc_gross."',
'"
.$mc_fee."','".$item_name."','".$payment_type."','".$payment_date."','".$txn_id."','".$pending_reason."',
'"
.$reason_code."','".$fecha."')");

$to $payer_email;
$subject $GLOBALS['donation']['emailResponse'];
$message 'Hello '.$first_name.'
We would like to inform you that the recent payment you did was successfull.

------------------------------------------
Payment email: '
.$payer_email.'
Payment amount: '
.$mc_gross.'
Buyer name: '
.$first_name.' '.$last_name.'
Payment date: '
.$payment_date.'
Account ID: '
.$custom.'
------------------------------------------
This payment is saved in our logs.

Thank you, the Management.
'
;
$headers 'From: '.$GLOBALS['default_email'].'' "\r\n" .
'X-Mailer: PHP/' phpversion();

if ($GLOBALS['donation']['emailResponse']==true
{
mail($to$subject$message$headers); 
if ($GLOBALS['donation']['sendResponseCopy']==true)
mail($GLOBALS['donation']['copyTo'], $subject$message$headers); 
}

$res fgets ($fp1024);
if($payment_status=="Completed")
{
if($GLOBALS['donation']['donationType']==2)
{
mysql_query("INSERT INTO payments_log(userid,paymentstatus,buyer_email,firstname,lastname,mc_gross,paymentdate,datecreation) values ('".$custom."',
'"
.$mc_gross."','".$payer_email."','".$first_name."','".$last_name."','".$mc_gross."','".$payment_date."','".$fecha."')");

for ($row 0$row count($GLOBALS['donationList']); $row++)
{
$coins $mc_gross;
if($coins == $GLOBALS['donationList'][$row][2])
mysql_query("UPDATE account_data SET dp=dp + ".$GLOBALS['donationList'][$row][1]." WHERE id='".$custom."'");
}
}
elseif($GLOBALS['donation']['donationType']==2)
{
$coins ceil($mc_gross);
mysql_query("UPDATE account_data SET dp=dp + ".$coins." WHERE id='".$custom."'");
}

 }
}
else if (
$resp == 'INVALID')
{
if($GLOBALS['donation']['donationType']==2)
{
 mysql_query("INSERT INTO payments_log(userid,paymentstatus,buyer_email,firstname,
 lastname,mc_gross,paymentdate,datecreation) values ('"
.$custom."','".$payment_status." - INVALID FUUUU ".$_POST['mc_gross']."','".$payer_email."',
 '"
.$first_name."','".$last_name."','".$mc_gross."','".$payment_date."','".$fecha."')");
}

 
mail($GLOBALS['donation']['copyTo'],"INVALID Donation","A payment was invalid. Information is shown below: <br/>
  User ID : "
.$custom."
  Buyer Email: "
.$payer_email."
  Amount: "
.$mc_gross." EUR
  Date: "
.$payment_date."
  First name: "
.$first_name."
  Last name: "
.$last_name."
  "
,"From: ".$GLOBALS['donation']['responseFrom']."");  
  
  mail($payer_email,"Hello there. Unfortunately, the latest payment you did was invalid. Please contact us for more information. 
  
  Best regards.
  The Management"
);

 mysql_query("INSERT INTO payments_log(userid,paymentstatus,buyer_email,firstname,lastname,mc_gross,paymentdate,datecreation) values ('".$custom."','".$payment_status." - INVALID','".$payer_email."','".$first_name."','".$last_name."','".$mc_gross."','".$payment_date."','".$fecha."')");
    }
 }

fclose ($fp); 
 
?>