Jump to content
php.lv forumi

noteikt lielako id


direktors

Recommended Posts

sākšu ar to, ka mysql zinu tik cik pa pusdienu var nezinātājs apgūt..

lai apgūtu šo iemaņu, sāku taisīt kauko līdzīgu jaunumu lapai, blogam.

 

lūk tabula - raksti

 

+---------+---------------------+---------------------+-----------+
|	  id | autors			  | laiks			   | raksts	| 
+---------+---------------------+---------------------+-----------+
|	   1 | xxxxxxxxxxxxxxxxxxx | 2001-10-29 13:11:00 | 5456	  | 
|	   3 | rrrrrrrrrrrrrrrrrrr | 2001-10-29 13:11:00 | dfhgh	 | 
|	   4 | fffffffffffffffffff | 2001-10-29 13:11:00 | dfhdffhgf | 
|	   7 | fffffffffffffffffff | 2001-10-29 14:16:21 | fghfg	 |
|	  45 | vvvvvvvvvvvvvvvvvvv | 0000-00-00 00:00:00 | ][po	  |
|	  44 | fffffffffffffffffff | 0000-00-00 00:00:00 | ooooo	 |
|	  43 | fffffffffffffffffff | 0000-00-00 00:00:00 |;lk;;;	 |
|	   2 | fffffffffffffffffff | 0000-00-00 00:00:00 | J;hh	  |
+---------+---------------------+---------------------+-----------+

 

tas ko es gribu jums jautāt ir - kā lai nosaka, kādu id piešķirt jaunai ziņai (id protams jabut atšķirigam no esošajiem)?

 

es pats māku uzrakstīt šādu domu:

$SQL = "SELECT id FROM raksti ORDER BY id DESC";
$result = mysql_query( $SQL );
$row = mysql_fetch_array( $result );
$jaunais_id = $row[0] + 1;

 

bet nezinu vai šis ir darīts gudri vai nav. kādi ieteikumi?

Edited by direktors
Link to comment
Share on other sites

uzliec id laukam auto increment un kad inserto datus, nenoraadi to id, tb atstaaj bez vertiibas ''. tas id pats automaatiski palielinaasies

Link to comment
Share on other sites

es datubāzi veidoju caur phpmyadmin, es pareizi sapratu ka man šis jaizvelas?

1152407390.jpg

 

ja man nav janorada id tad ko man darit ar šo rindu?

INSERT INTO raksti (id, nosaukums) VALUES ("???", 'qwertyids')

proti, ko darīt ar ???, atstat tukšu.. ?

Edited by direktors
Link to comment
Share on other sites

bet tad es nesaprotu, kādēļ izvadot šādi,

$SQL = "SELECT * from raksti"; $result = @mysql_query( $SQL );
while( $row = @mysql_fetch_array( $result ) ) {
echo "$row[id] $row[nosaukums]"; 
}

 

rāda ka id ierakstiem ir 0 ..?

0 => qwertyids
0 => qwertyids
0 => qwertyids
0 => qwertyids
0 => qwertyids
0 => qwertyids
0 => qwertyids
0 => qwertyids
0 => qwertyids

 

EDIT:

vaina cik sapratu ir lūk kur:

MySQL teica: Dokumentācija
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

 

kur var definēt to key?

Edited by direktors
Link to comment
Share on other sites

.. turpināšu savu domu.. ar id tagad ir skaidriba. bet šodien meģinot pievienot ierakstus caur šādu formu:

<form method="post" action="jaunumi.php?act=pievienot">
	nosaukums<input type="text" name="nosaukums"><br />
	bilde<input type="text" name="bilde"><br />
	teksts<input type="text" name="teksts"><br />
	autors<input type="text" name="autors"><br />
	<input type="submit" name="login" value="Pievienot ierakstu!" >
	</form>

 

tālāk saņemu ar:

if ($_GET['act']=='pievienot'){
	$nosaukums = $_POST['nosaukums'];
	$bilde = $_POST['bilde'];
	$teksts = $_POST['teksts'];
	$autors = $_POST['autors'];
	$sql = "INSERT INTO raksti (nosaukums, bilde, teksts, autors, ievietots, komentari) VALUES ( $nosaukums , '$bilde', '', '$autors ', 'ievietots', '0')";
	mysql_query($sql);
	header('location: managerits.php');
}

 

problēma rodas tajā apstāklī, ka postējot datus tie ievietojas tabulā tikai tad ja ir cipari piem. 34234.. bet teksts - blabla nepievienojas. kur varetu but problēma. vajadzīgajām kolonām type liku text.

Edited by direktors
Link to comment
Share on other sites

pēc tā mysql_error() nopratu, ka kautkas nav kārtībā šai rindā:

$sql = "INSERT INTO raksti (nosaukums, bilde, teksts, autors, ievietots, komentari) 
VALUES ( $nosaukums , 'bilde', 'teksts', 'autors ', 'ievietots', '0')";

pēc pāris variācijām šai rindā secināju, ka $nosaukums vajag iekš ' '..

 

jautājums:

man ir kolonna - komentari kurā tiek glabāts cik komentāru rakstam, pievienojot jaunu rakstu es norādu lai viņā raksta 0, interesē - vai nevar norādīt kautkā tabulā lai pievienojot rindu, kolonnas komentari šūnā ieraksta nulli. (tāpat kā id automātiski piešķiras, bet lai ir nevis unikāls cipars bet nulle)

Link to comment
Share on other sites

ar pliku manuāli neiztikt.

 

kam tad šo un citus php/mysql forumus taisa, lai no tiem pasūtītu lasīt manuāli? ja grūti - tad nav jau obligāti eseja jāraksta lai kādam ko skaidrotu, linkus uz risinājumiem arī var pieņemt, hintus.

Link to comment
Share on other sites

×
×
  • Create New...