Tema: Problema PhP
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/07/2008, 10:31
xtatanx
 
Fecha de Ingreso: junio-2008
Mensajes: 8
Antigüedad: 15 años, 11 meses
Puntos: 0
Problema PhP

Buenas a todos, tengo este problema tengo esa consulta
Cita:
$query = 'INSERT INTO usuarios (usuario, password, email, fecha, nombre, edad, ciudad, profesion,activate,estado)
VALUES (\''.$username.'\',\''.$password.'\',\''.$email.'\ ',\''.date("Y-m-d").'\',\''.$nombre.'\',\''.$edad.'\',\''.$ciudad. '\',\''.$profesion.'\',\''.$activate.'\',1)';
mysql_query($query) or die(mysql_error());
que hace parte de todo un codigo que encontre en este foro para hacer un registro de usuarios, al subirla al servidor este problema me pone
Cita:
Column count doesn't match value count at row 1
se supone que lso cmapos no coinciden con lso que tenog en mi base de datos, pero esos mismos 10 campos los tngo, les dejo el codigo completo haber si alguien podria encontrar el error
Cita:
<?php
session_start();
//datos para establecer la conexion con la base de mysql.
$conexion=mysql_connect('lexus.worldispnetwork.com ','pulsar_webmaster','straightedge')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('pulsar_login')or die ('Error al seleccionar la Base de Datos: '.mysql_error());


//añadimos la funcion que se encargara de generar un numero aleatorio
function genera_random($longitud){
$exp_reg="[^A-Z0-9]";
return substr(eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())),
0, $longitud);
}



// verificamos si se han enviado ya las variables necesarias, las que tenemos en nuestro form cambialo, como sea el tuyo.
if (isset($_POST["username"])) {
$username = $_POST["username"];
$password = $_POST["password"];
$password2 = $_POST["password2"];
$email = $_POST["email"];
$nombre = $_POST["nombre"];
$edad = $_POST["edad"];
$ciudad = $_POST["ciudad"];
$profesion = $_POST["profesion"];
// Hay campos en blanco
if($username==NULL|$password==NULL|$password2==NUL L|$email==NULL) {
echo "un campo está vacio.";
formRegistrar();
}else{
// ¿Coinciden las contraseñas?
if($password!=$password2) {
echo "Las contraseñas no coinciden";

}else{
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
$checkuser = mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
$username_exist = mysql_num_rows($checkuser);
$checkemail = mysql_query("SELECT email FROM usuarios WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0) {
echo "La cuenta de correo estan ya en uso";

}else{
if ($username_exist>0) {
echo "El nombre de usuario esta ya en uso";



}else{

//agregamos la variable $activate que es un numero aleatorio de
//20 digitos crado con la funcion genera_random de mas arriba

$activate = genera_random(20);

//aqui es donde insertamos los nuevos valosres en la BD activate y el valor 1 que es desactivado

$query = 'INSERT INTO usuarios (usuario, password, email, fecha, nombre, edad, ciudad, profesion,activate,estado)
VALUES (\''.$username.'\',\''.$password.'\',\''.$email.'\ ',\''.date("Y-m-d").'\',\''.$nombre.'\',\''.$edad.'\',\''.$ciudad. '\',\''.$profesion.'\',\''.$activate.'\',1)';
mysql_query($query) or die(mysql_error());



echo "<table width=70%><tr bgcolor= #61e877 class= estilo30><div align=center>";
echo 'Ha sido registrado en Nuestra pagina. como: <b>'.$username.' </b>de manera satisfactoria.<br />';
echo ' Gracias. Le enviaremos ahora un email<br />';
echo 'para activar su cuenta, al correo que nos facilito.<br />';
echo "</div></tr>";
echo "</table>";



$query = "SELECT * FROM usuarios WHERE usuario='$username'";
$result = mysql_query($query , $conexion) or die ( mysql_error() );
$row = mysql_fetch_array($result);

$path="http://www.produccionespulsar.com/pruebaphp2/activacioncuenta.php"; //creamos nuestra direccion, con las carpetas que sean si hay
//armamos nuestro link para enviar por mail en la variable $activateLink
$activateLink=$path."activacioncuenta.php?id=".$ro w['id']."&activateKey=".$activate."";

// Datos del email

$nombre_origen = "Producciones pulsar";
$email_origen = "[email protected]";
$email_copia = "[email protected]";
$email_ocultos = "[email protected]";
$email_destino = "[email protected]";



$asunto = "".$row['usuario']." Datos de su registro.";

$mensaje = '<table width="629" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="623" align="left"></td>
</tr>
<tr>
<td bgcolor="#2EA354"><div style="color:#FFFFFF; font-size:14; font-family: Arial, Helvetica, sans-serif; text-transform: capitalize; font-weight: bold;"><strong> Estos son sus datos de registro, '.$row['usuario'].'</strong></div></td>
</tr>
<tr>
<td height="95" align="left" valign="top"><div style=" color:#000000; font-family:Arial, Helvetica, sans-serif; font-size:12px; margin-bottom:3px;"> USUARIO: '.$row['usuario'].'</strong><br><br><br>
<strong>SU CLAVE : </strong>'.$row['password'].'</strong><br><br><br>
<strong>SU EMAIL : </strong>'.$row['email'].'</strong><br><br><br>
<strong>SU LINK DE ACTIVACION:<br><a href="'.$activateLink.'">'.$activateLink.' </strong></a><br><br><br>
<strong>POR FAVOR HAGA CLICK EN LINK DE ARRIBA PARA ACTIVAR SU CUENRA Y ACCEDER A LA PAGINA SIN RESTRICCIONES</strong><br><br><br>
<strong>SI EL LINK NO FUNCIONA ALA PRIMERA INTENTELO UNA SEGUNDA, EL SERVIDOR A VECES TARDA EN PROCESAR LA PRIMERA ORDEN</strong><br><br><br>

<strong>GRACIAS POR REGISTRARSE EN CEVIT.</strong><br><br><br>
</div>
</td>
</tr>
</table>';



$formato = "html";

//************************************************** ***************//
$headers = "From: $nombre_origen <$email_origen> \r\n";
$headers .= "Return-Path: <$email_origen> \r\n";
$headers .= "Reply-To: $email_origen \r\n";


$headers .= "X-Sender: $email_origen \r\n";

$headers .= "X-Priority: 3 \r\n";
$headers .= "MIME-Version: 1.0 \r\n";
$headers .= "Content-Transfer-Encoding: 7bit \r\n";

//************************************************** ***************//

if($formato == "html")
{ $headers .= "Content-Type: text/html; charset=iso-8859-1 \r\n"; }
else
{ $headers .= "Content-Type: text/plain; charset=iso-8859-1 \r\n"; }

@mail($email_destino, $asunto, $mensaje, $headers);







}
}
}
}
}else{

}

?>
<form action="../produccionespulsar.com/pruebaphp2/registrar.php" method="post">
Nombre:
<input type="text" name="nombre" size="30" maxlength="40" /><br />
Edad:
<input type="text" name="edad" size="3" maxlength="2" /><br />
Ciudad:
<input type="text" name="ciudad" size="20" maxlength="20" /><br />
Profesion:
<input type="text" name="profesion" size="20" maxlength="15" /><br />
Usuario (max 20):
<input type="text" name="username" size="20" maxlength="20" /><br />
Password (max 10):
<input type="password" name="password" size="10" maxlength="10" />
Confirma: <input type="password" name="password2" size="10" maxlength="10" /><br />
Email (max 40):
<input type="text" name="email" size="20" maxlength="40" /><br />
<input type="submit" value="Registrar" />
</form>

<FORM ACTION=../pruebaphp/&ldquo;validar_usuario.php&rdquo; METHOD=“post”>
Usuario : <INPUT TYPE=“text” NAME=“usuario” SIZE=20 MAXLENGTH=20><br />
Password: <INPUT TYPE=“password” NAME=“password” SIZE=10 MAXLENGTH=20><br />
<INPUT TYPE="submit" VALUE="Ingresar">
</FORM>