Προς το περιεχόμενο

phpMyAdmin Προβλημα


aris2134

Προτεινόμενες αναρτήσεις

Δημοσ.

Γεια σε όλους! Εχω εγκαταστησει με επιτυχια το xampp και το προβλημα που αντιμετωπίζω ειναι οτι οταν παω να εισάγω δεδομένα στην βάση δεδομένων , ενω μου εμφανίζει μήνυμα οτι τα δεδομενα μπήκαν στην βάση μου στο phpMyAdmin και στην βάση αυξανονται οι εγγραφές (εχω ενα πεδίο auto increment) τα πεδία varchar δεν εμφανιζονται. Πχ εστω οτι εχω 3 πεδια id auto increment,name,surname. Κάνω εισαγωγή στην βαση ,το πεδιο id αυξάνει κατα 1 καθε φορα δηλαδή μπαίνει η αντίστοιχη εγγραφή στην βάση αλλα τα πεδια name,surname ειναι κενά.Παλιότερα στα windows xp δεν ειχα τετοιο προβλημα,μονο το προβλημα ελληνικών ...??? κλασικά!Τώρα με τα win7 δημιουργήθηκε και εχω προσπαθήσει τα πάντα.. Αν γνωρίζει κάποιος ας βοηθήσει! Ευχαριστώ!

Δημοσ.

Ναι με php script τα εισάγω.. Το προβλημα εμφανίστηκε ξαφνικά..παλιοτερα μου δούλευε αυτο είναι το περίεργο..Αν θές μπορώ να στείλω τον κωδικα να μου πείς ..

Δημοσ.

Το πρόβλημά σου είναι κατα 99% στο php script. Προφανώς με την αλλαγή σε win7 και την επανεγκατάσταση της php άλλαξαν κάποιοι παράμετροι και οι μεταβλητές που εισάγεις για τα πεδία name και username παραμένουν κενές.

 

Στείλε κώδικα

Δημοσ.

Στο php αρχείο υπάρχουν ακριβώς τα παρακάτω..

 

<?php

 

mysql_connect ('localhost', 'username','pass') or die ('Could not connect to database');

mysql_select_db('db2') or die ('Could not select database');

 

$id = $_POST['$id'];

$name = $_POST['$name'];

$surname = $_POST['$surname'];

 

 

 

 

 

$result = mysql_query("INSERT INTO test_form (id,name,surname) VALUES ('$id','$name','$surname') ");

 

 

if ($result==TRUE) {

echo "items inserted into database.";

} else {

echo "Try again!!";

}

 

 

?>

 

Είναι ενα απλό scriptaki ,οπου username και pass τα δικά μου..!

και το html scrpt

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Untitled Document</title>

</head>

 

<body>

 

<fieldset>

 

<form name="form" method="post" action="insertform.php" >

<p>Id: <input type="text" name="id" /></p>

<p>Name: <input type="text" name="name" /></p>

<p>Surname: <input type="text" name="surname" /></p>

 

<p><input type="submit" name="ok" /> </p>

 

</form>

 

</fieldset>

 

 

</body>

</html>

Δημοσ.

Κάνε ένα echo να δεις τι query εκτελείται..

 

Επίσης, όταν λες ότι το id είναι auto_increment τότε αυτόματα είναι και κλειδί στον πίνακα σου άρα το σωστό query θα έπρεπε να είναι

 

>
$result = mysql_query("INSERT INTO test_form (name,surname) VALUES ('$name','$surname') ");

Δημοσ.

Διόρθωσα την γραμμή

$result = mysql_query("INSERT INTO test_form (name,surname) VALUES ...

 

και μαζι με το echo query εμφανίζει

 

items inserted into database.Resource id #3

αλλα πάλι τιποτα στην βάση τα πεδία κενα...:-(

 

Μπορεις να μου δώσεις σε κώδικα mysql την δημιουργία της βάσης να την ξαναδημιουργήσω μήπως κανω κατι λαθος εκει ?

Δημοσ.

Το σωστό aris2134 είναι να βάλεις echo($query); για να δεις ποια είναι η sql εντολή που στέλνεις. Στη συνέχεια την αντιγράφεις στο phpmyadmin και βλεπεις τι λάθος σου βγάζει. Αν πάλι δεν καταλάβεις από εκεί το λάθος στείλε την εντολή που σου βγάζει το echo και το μήνυμα λάθους (αν σου βγάζει) του phpmyadmin

Δημοσ.

Μετά απο πολλες προσπάθειες το προβλημα παραμένει...

απεγκατεστησα το xampp,το εγκατεστησα ξανά,δοκίμασα καποιες ρυθμισεις,το ξαναεβγαλα,το ξαναεβαλα,ξαναδημιούργησα τη ΒΔ στο phpMyAdmin, δοκίμασα και σε windows xp στα οποια δούλευε παλαιότερα..Τι αλλο να κάνω?

Μήπως γνωρίζει κανείς αν πρέπει να γινουν καποιες ρυθμισεις σε κάποια αρχεία php,mysql πχ στο php.ini κτλ ?? Παίζει κάποιο ρόλο που εχω τα windows 7 τα 64bit ??

Υπενθυμίζω το προβλημα.. Εισάγω δεδομένα στην βαση ,μου βγάζει μνμ επιτυχιας και οταν παω στην βάση να τα δω ενω φαίνεται οτι εχουν μπει δεδομένα δεν εμφανιζεται τιποτα δηλαδη ειναι κενα...

Καμια ακομα βοήθεια??

Δημοσ.

Λοιπόν φίλε μου θα κάνεις το εξής :

 

Θα πας να βάλεις χειροκίνητα μία εγγραφή, δηλαδή θα ανοίξεις το phpmyadmin και θα τρέξεις το query

>
INSERT INTO `test_form` (`name`,`surname`) VALUES ('my_name','my_surname')

 

Εάν εισάγει την εγγραφή (που αυτό θα κάνει) τότε το πρόβλημα είναι στο php script που κάνεις εισαγωγή τα δεδομένα.

 

Σου είχα πει να κάνεις echo το query, δηλαδή το

>
echo "INSERT INTO `test_form` (`name`,`surname`) VALUES ('$name','$surname')";

και να δεις τι σου γυρνάει

Δημοσ.

Εχεις δίκιο απο το phpMyAdmin τα εισάγει κανονικα..

Και δοκιμασα το echo και αφου πατήσω submit μου εμφανιζει ακριβώς:

 

items inserted into database.

 

INSERT INTO test_form (name) VALUES ('')

 

και βαζοντας αυτην την γραμμη στο phpMyAdmin στο sql μου την τρεχει κανονικα...και μου βαζει το κενο..

Δημοσ.

Λοιπόν φίλε μου,

 

όπως βλέπεις και εσύ δεν τραβάς σωστά τα δεδομένα και είναι άδεια....

 

Έχεις πρόβλημα στο POST και όχι στην βάση σου

Δημοσ.

Οριστε το hmtl αρχείο

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Untitled Document</title>

</head>

 

<body>

<center>

<fieldset>

 

<form action="insertform.php" method="post" >

 

 

<p>name: <input type="text" name="name" id="name" /></p>

 

 

<p><input type="submit" name="ok" /> </p>

 

 

 

</form>

 

</fieldset>

</center>

 

</body>

</html>

 

 

 

 

 

 

 

Οριστε και το php scriptaki αλλο αρχειο

 

 

 

 

 

<?php

 

mysql_connect ('localhost', '----','-----') or die ('Could not connect to database');

mysql_select_db('db2') or die ('Could not select database');

//mysql_query("SET NAMES utf8");

 

 

$namee = $_POST['$name'];

 

 

 

 

 

 

$result = mysql_query("INSERT INTO test_form(name) VALUES('$namee') ");

 

 

if ($result==TRUE) {

echo "items inserted into database.";

} else {

echo "Try again!!";

}

 

echo "<p>INSERT INTO test_form (name) VALUES ('$namee')</p>";

?>

 

 

Πραγματικα δεν μπορώ να βρώ που μπορει να εχω κανει λάθος..Για ρίξε μια ματια..

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...