Pregunta:
quisiera hacer una consulta esta $sql="select max(id_padre) as numero from papa"; mysql_query($sql);?
erny
2009-04-16 23:18:32 UTC
esto para sacar el maximo y sumarle uno y luego grabarlo en la base de datos con los demas campos por ejemplo si en anterior registro el papa era el 4 ahora sera el 5 con otro name de papa espero y me puedan ayudar dejo el codigo como lo hago pero no me graba nada y no se si hace la consulta y le suma uno ya que no marca error

$conexion=mysql_connect("localhost","root","paswword") or
die("Problemas en la conexion");
mysql_select_db("ejemplo",$conexion) or
die("Problemas en la selección de la base de datos");
$sql="select max(id_padre) as numero from papa";
mysql_query($sql);
$variable = numero + 1;
$sql2= "insert into papa (Id,Nombre, Apellido)
VALUES ('$variable','$_POST[nombre]','$_POST[apellido]')";$conexion or
die("Problemas no se grabao nada :".mysql_error());
mysql_query($sql2);
mysql_close($conexion);
?>

ojala y me puedan ayudar
Tres respuestas:
Fdh182
2009-04-17 00:01:01 UTC
Pues mira , para sumarle un numero no creo que sea asi ya que le debes mandar la orden a la base de datos que actualise la cantidad que tiene a +1 y eso seria con un UPDATE asi que no lo mostraria y una consulta al sql seria algo asi :



y una consulta en php seria algo asi masomenos no soy experto en esto pero se un poco. :



$query_check_condi = mssql_query("SELECT columna FROM tabla WHERE columna='$variable]'");



Eeso seria una consulta correcta traducida diria :

Selecciona columna de la tabla tabla donde columna es igual a la variable que tu espesificaste.



y ante todo esto en la conexion no es del todo correcta dado que no espesifica ni el usuario ni la pass de la base de datos y tampoco espesificas la base de datos una conexion al mysql en php seria algo asi :




$dbhost = "127.0.0.1";

$dbuser = "sa"; //Usuario del SQL

$dbpasswd = "33338737"; //Contraseña o Pass del Sql

$msconnect=@mssql_connect("$dbhost","$dbuser","$dbpasswd") or die ('ERROR INTENTE MAS TARDE!');

$msdb=@mssql_select_db("basededatos",$msconnect) or die ('ERROR! INTENTE MAS TARDE!');

?>
Hermético
2009-04-17 06:58:39 UTC
El fallo es una tontería.



Fíjate que te estás equivocando



$sql="select max(id_padre) as numero from papa";

...........

$sql2= "insert into papa (Id,Nombre, Apellido) .......



En un sitio lo llamas id_padre, y en otro Id. Sólo uno de ellos puede ser el nombre del campo.



Un saludo.
chino Saenz
2009-04-17 13:59:42 UTC
Lo mas facil que puedes hacer es entrar a la Base.



en PhpMyAdmin y ahi ponle que el campo de Id o Id_Padre sea autoincrement, asi se autoincrementa en uno (solito), Claro primero tienes que ponerle tambien que sea la llave primaria (primary key).



NOTA:

(ojo con EL Id o Id_Padre porque no se cual sera, porque solo va un nombre, en el codigo aparecen 2 nombres distintos, y ahi podria estar tu error).


Este contenido se publicó originalmente en Y! Answers, un sitio web de preguntas y respuestas que se cerró en 2021.
Loading...