Just nu i M3-nätverket
Jump to content

får inte update att fungera


swede.anka

Recommended Posts

jag lyckas inte få update att fungera med php och mysql. jag får inga felmedelanden heller så jag vet inte riktigt var jag ska felsöka.

Det enda jag vet är att värdena inte uppdateras i MYSQL databasen.

 

jag har kört en print längre ner i koden för att se att värdena som hämtas från formuläret stämmer och det gör de.

 

<?

 

$connection = mysql_connect("localhost", "kalle", "pelle") or die("Kunde inte skapa koppling!");

 

mysql_select_db("prislista") or die ("Kunde inte välja databas");

 

$hamta = "SELECT * FROM abonemang";

$resultat = mysql_query($hamta) or die("Det gick inte att hämta information från databasen!");

 

 

$ab_id = $_POST['ab_id'];

$synlig = $_POST['synlig'];

 

$sql = "UPDATE telefon SET ab_synlig = 'NEJ' WHERE ab_id = 12";

mysql_query($sql);

 

mysql_close($connection);

 

print $ab_id;

print $synlig;

?>

 

 

Tacksam för svar

 

Link to comment
Share on other sites

prova lägga till:

 

error_reporting(E_ALL);

 

och se om du får några felmeddelanden

 

Sen kollar du väl aldrig update queryn går? du borde kanske skriva ut resultatet och lägga dit en or die()

 

 

 

/cec

 

 

***NEJ TILL MJUKVARUPATENT***

Använder du en dator? i sånna fall angår detta DIG!

Det är upp till dig! EU beslutar i höst.

 

http://www.ffii.se

 

Link to comment
Share on other sites

var ska jag klistra in: error_reporting(E_ALL);

jag provade i början och slutet av koden men fick inget resultat.

 

 

jag har lagt dit en OR DIE kod nu och den kommer upp varje gång jag försöker uppdatera

 

Link to comment
Share on other sites

det var bara som jag hade i ett av mina testprojekt för att den skulle ha "fasta värden".

 

har även en där koden ser ut så här men inget av det fungerar

 

<?

error_reporting(E_ALL);

$connection = mysql_connect("localhost", "root", "lootus") or die("Kunde inte skapa koppling!");

 

mysql_select_db("prislista") or die ("Kunde inte välja databas");

 

$hamta = "SELECT * FROM abonemang";

$resultat = mysql_query($hamta) or die("Det gick inte att hämta information från databasen!");

 

 

$ab_id = $_POST['ab_id'];

$synlig = $_POST['synlig'];

 

 

 

$sql = "UPDATE telefon SET ab_synlig = $synlig WHERE ab_id = $ab_id";

mysql_query($sql) or die ("kunde inte uppdatera");

 

mysql_close($connection);

 

print $ab_id;

print $synlig;

 

error_reporting(E_ALL);

?>

 

 

 

Link to comment
Share on other sites

Formulerade mig lite konstigt :-)

 

Menade att du aldrig aldrig kollade vad du fick tillbaka av mysql_query(). Den returnerar ju true/false beroende på hur det går. Men eftersom du får DIE nu så spelar det ju ingen roll.

 

Ser inget fel med din query.

Lägg till or die(mysql_error()); å så ser du vad du får för felmeddelande.

 

 

dvs:

mysql_query($sql) or die(mysql_error());

 

 

 

 

 

/cec

 

 

***NEJ TILL MJUKVARUPATENT***

Använder du en dator? i sånna fall angår detta DIG!

Det är upp till dig! EU beslutar i höst.

 

http://www.ffii.se

 

Link to comment
Share on other sites

Jag blev lite klokare av din beskrivning men inte felmedelandet jag får.

 

Resultatet i OR DIE blev:

Unknown column 'ab_id' in 'where clause'

 

om det är att den inte hittar columnen ab_id så blir jag förvånad för det finns en kolumn som heter så.

Vad 'where clause' betyder förtår jag dock inte

 

Link to comment
Share on other sites

MySQL är (ibland) case-sensitive har jag märkt. Är du säker på att det är alla små bokstäver i kolumn namnet?

 

--

Some say I am crazy.. but the voices in my head disagree...

 

Link to comment
Share on other sites

Det innebär att den inte hittar 'ab_id' som anges i "where"-klausulen. Alltså där du skriver "WHERE ab_id = 12" hittar den inte ab_id i databasen.

 

Det kan ju bero på lite olika saker, men det BjOrN skriver är ett hett tips.

 

 

 

/cec

 

 

***NEJ TILL MJUKVARUPATENT***

Använder du en dator? i sånna fall angår detta DIG!

Det är upp till dig! EU beslutar i höst.

 

http://www.ffii.se

 

Link to comment
Share on other sites

kolumnen heter ab_id och jag använder exakt samma fråga när jag listar databasen på andra sidor och då fungerar det.

 

Jag blev så less på sidan då varken ni eller en bekant kunde hitta något fel så jag skrev om hela sidan på samma sätt (dock med små bokstäver överallt) ifall något konstigt tecken smygit sig in som ingen såg.

 

Tro det eller ej men då fungerade sidan.

Visst är programering underbart.

 

STORT TACK för all hjälp och tips som jag även kan använda i framtiden

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...