problema inserare de 2 ori aeleasi date[rezolvat]
Moderatori: Zamolxe, Moderatori
problema inserare de 2 ori aeleasi date[rezolvat]
Ultima oară modificat Vin Iul 03, 2009 7:51 pm de către ndianaz, modificat de 2 ori în total.
lorand1, din mysql insertia o fac asa cum ai scris si tu, daca specific id-ul imi insereaza o singura line, daca nu-l specific imi insereaza 2 linii identice, dar cu id diferit. In php codul arata astfel:
$id = $_POST['id'];
$name = $_POST['nume_producator'];
$prod_ap= $_POST['producator_ap'];
$prod_roboti = $_POST['producator_roboti'];
$web = $_POST['adresa_web'];
$observes = $_POST['observatii'];
$query = "INSERT INTO producatori (id, nume_producator, producator_ap, producator_roboti, adresa_web, observatii)
VALUES ('$id','$name', '$prod_ap', '$prod_roboti', '$web','$observes')";
cu valorile specifice de tip input dintr-o pagina html
$id = $_POST['id'];
$name = $_POST['nume_producator'];
$prod_ap= $_POST['producator_ap'];
$prod_roboti = $_POST['producator_roboti'];
$web = $_POST['adresa_web'];
$observes = $_POST['observatii'];
$query = "INSERT INTO producatori (id, nume_producator, producator_ap, producator_roboti, adresa_web, observatii)
VALUES ('$id','$name', '$prod_ap', '$prod_roboti', '$web','$observes')";
cu valorile specifice de tip input dintr-o pagina html
-
preda.vlad
- Average Member
- Mesaje: 192
- Membru din: Vin Mar 20, 2009 4:56 pm
- Contact:
Acesta este tot scriptul:
<?php
$db = "ap_si_roboti";
$host = "localhost";
$user = "root";
$pass = "diana";
$link = mysql_connect($host, $user, $pass);
if ($link == null) {
print "EROARE la conexiune<br/>".mysql_error();
die();
}
else {
print "Conexiunea a reusit<br/>";
if (mysql_select_db($db, $link)) {
print "Selectia bazei de date ".$db. " a reusit<br/>";
}
else {
print "EROARE de selectie<br/>".mysql_error();
die();
}
}
$name = $_POST['nume_producator'];
$prod_ap= $_POST['producator_ap'];
$prod_roboti = $_POST['producator_roboti'];
$web = $_POST['adresa_web'];
$observes = $_POST['observatii'];
$query = mysql_query(SELECT * FROM producatori WHERE nume_producator = '$name' AND producator_ap ='$prod_ap' AND producator_roboti='$prod_roboti' AND adresa_web='$web' observatii='$observes' ) or die (mysql_error());
if (mysql_num_rows($query) == 0)
{
$query = mysql_query("INSERT INTO producatori ( nume_producator, producator_ap, producator_roboti, adresa_web, observatii) VALUES ('$name', '$prod_ap', '$prod_roboti', '$web','$observes')") or die mysql_error();
}
mysql_query($query);
mysql_close();
?>
nu-mi dau seama care e problema

<?php
$db = "ap_si_roboti";
$host = "localhost";
$user = "root";
$pass = "diana";
$link = mysql_connect($host, $user, $pass);
if ($link == null) {
print "EROARE la conexiune<br/>".mysql_error();
die();
}
else {
print "Conexiunea a reusit<br/>";
if (mysql_select_db($db, $link)) {
print "Selectia bazei de date ".$db. " a reusit<br/>";
}
else {
print "EROARE de selectie<br/>".mysql_error();
die();
}
}
$name = $_POST['nume_producator'];
$prod_ap= $_POST['producator_ap'];
$prod_roboti = $_POST['producator_roboti'];
$web = $_POST['adresa_web'];
$observes = $_POST['observatii'];
$query = mysql_query(SELECT * FROM producatori WHERE nume_producator = '$name' AND producator_ap ='$prod_ap' AND producator_roboti='$prod_roboti' AND adresa_web='$web' observatii='$observes' ) or die (mysql_error());
if (mysql_num_rows($query) == 0)
{
$query = mysql_query("INSERT INTO producatori ( nume_producator, producator_ap, producator_roboti, adresa_web, observatii) VALUES ('$name', '$prod_ap', '$prod_roboti', '$web','$observes')") or die mysql_error();
}
mysql_query($query);
mysql_close();
?>
nu-mi dau seama care e problema
Trebuie sa mai ai ceva in plus. Daca nu, e voodoo programming. Nu ai un
fisier HTML cu un formular (FORM), care FORM are un atribut ACTION in care
e adresa catre scriptul de l-ai postat mai sus? Poti sa postezi si partea aceea?
LATER EDIT.
Sper sa nu te deranjeze, dar daca ai spus ca esti la inceput cu PHP-ul, m-am
gandit sa iti rescriu scriptul intr-un mod care mi se pare mie mai organizat.
Scriptul nu e ideal. Se poate si mai bine, dar nu am vrut sa fie prea greu.
Nu il postez aici, l-am pus la adresa asta:
http://gist.github.com/140094
Sper sa te ajute putin, iar daca nu intelegi, poti sa ma intrebi. A, da. Cand il
citesti, citeste-l de jos in sus, nu de sus in jos.
fisier HTML cu un formular (FORM), care FORM are un atribut ACTION in care
e adresa catre scriptul de l-ai postat mai sus? Poti sa postezi si partea aceea?
LATER EDIT.
Sper sa nu te deranjeze, dar daca ai spus ca esti la inceput cu PHP-ul, m-am
gandit sa iti rescriu scriptul intr-un mod care mi se pare mie mai organizat.
Scriptul nu e ideal. Se poate si mai bine, dar nu am vrut sa fie prea greu.
Nu il postez aici, l-am pus la adresa asta:
http://gist.github.com/140094
Sper sa te ajute putin, iar daca nu intelegi, poti sa ma intrebi. A, da. Cand il
citesti, citeste-l de jos in sus, nu de sus in jos.
I'm under construction |
iti introduce de doua ori pentru ca iti executi query-ul de doua ori
odata cand il atribui aici:
$query = mysql_query("INSERT INTO producatori ( nume_producator, producator_ap, producator_roboti, adresa_web, observatii) VALUES ('$name', '$prod_ap', '$prod_roboti', '$web','$observes')") or die mysql_error();
si apoi cu
penultima linie
mysql_query($query);
la atribuirea de mai sus trebuia sa ai asa:
$query = "INSERT INTO producatori ( nume_producator, producator_ap, producator_roboti, adresa_web, observatii) VALUES ('$name', '$prod_ap', '$prod_roboti', '$web','$observes')";
si abia apoi il poti executa cu:
mysql_query($query);
Sper ca ai inteles.
PS : la atribuire $query = mysql_query..... $query primeste o functie si ca urmare se executa
@ Amenthes, frumos scriptul, am aruncat si eu o privire
Bafta
odata cand il atribui aici:
$query = mysql_query("INSERT INTO producatori ( nume_producator, producator_ap, producator_roboti, adresa_web, observatii) VALUES ('$name', '$prod_ap', '$prod_roboti', '$web','$observes')") or die mysql_error();
si apoi cu
penultima linie
mysql_query($query);
la atribuirea de mai sus trebuia sa ai asa:
$query = "INSERT INTO producatori ( nume_producator, producator_ap, producator_roboti, adresa_web, observatii) VALUES ('$name', '$prod_ap', '$prod_roboti', '$web','$observes')";
si abia apoi il poti executa cu:
mysql_query($query);
Sper ca ai inteles.
PS : la atribuire $query = mysql_query..... $query primeste o functie si ca urmare se executa
@ Amenthes, frumos scriptul, am aruncat si eu o privire
Bafta
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 7 vizitatori
